Information processing apparatus, information processing method, program

ABSTRACT

There is provided an information processing apparatus including: a sensor data generator sensing a user behavior and generating sensor data corresponding to the user behavior; a behavior recognizing unit performing a predetermined threshold value process on the sensor data to recognize the behavior exhibited by the user and generating behavior information that is information indicating the behavior exhibited by the user; a behavior manager managing the behavior information generated by the behavior recognizing unit in correspondence with the time point at which the behavior corresponding to the behavior information is exhibited; and a behavior information post-processing unit performing a predetermined post-process on the behavior information managed by the behavior manager, wherein the behavior recognizing unit further includes a plurality of behavior determination units specified to specific behaviors exhibited by the user and generates the behavior information based on the determination results of the plurality of behavior determination units.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an information processing apparatus, aninformation processing method, and a program therefor.

2. Description of the Related Art

Recently, information processing apparatuses such as mobile phones havemultiple functions. Therefore, a user may obtain various types ofinformation by using various functions provided to the informationprocessing apparatus. As an example of a function provided to theinformation processing apparatus, there is a function of recognizinguser behavior. For example, Japanese Unexamined Patent ApplicationPublication No. 2006-340903 discloses a technology of recognizing userbehavior such as walking, running, or stopping by using an accelerationsensor or a gyro sensor and displaying the behavior as an object.

However, in the aforementioned technology, a method of recognizing eachbehavior of the user with a good accuracy is not implemented. Therefore,for example, it is necessary to implement a filtering function and acalculation function for recognizing each behavior. In addition, it isalso necessary to implement a method of optimizing results of behaviorrecognition.

SUMMARY OF THE INVENTION

It is desirable to provide a new, improved information processingapparatus, information processing method, and program capable ofrecognizing a user behavior with better accuracy.

According to an embodiment of the present invention, there is providedan information processing apparatus including: a sensor data generatorthat senses a user behavior and generates sensor data corresponding tothe user behavior; a behavior recognizing unit that recognizes thebehavior exhibited by the user by performing a predetermined thresholdvalue process on the sensor data and generates behavior information thatis information indicating the behavior exhibited by the user; a behaviormanager that manages the behavior information generated by the behaviorrecognizing unit in correspondence with the time point at which thebehavior corresponding to the behavior information is exhibited; and abehavior information post-processing unit that performs a predeterminedpost-process on the behavior information managed by the behaviormanager, in which the behavior recognizing unit further includes aplurality of behavior determination units specified to specificbehaviors exhibited by the user and generates the behavior informationbased on the determination results of the plurality of behaviordetermination units.

In the information processing apparatus, the behavior recognizing unitmay at least include: a stopped state determination unit that determineswhether or not the user is in the stopped state; a walking/running statedetermination unit that determines whether or not the user is in thewalking state or in the running state; a jumping state determinationunit that determines whether or not the user is in the jumping state; aposture change determination unit that determines whether or not theuser is in the sitting state or in the standing state; an elevatorboarding determination unit that determines whether or not the user isin the boarding-elevator state; an electric train boarding determinationunit that determines whether or not the user is in the boarding-electrictrain state; and a turning-to-the-right/turning-to-the-leftdetermination unit that determines whether or not the user turns to theright or to the left.

The behavior recognizing unit may include, as the behavior determinationunit, a vehicle boarding determination unit that that determines byusing the sensor data and a predetermined identification function set inadvance whether or not the user boards a vehicle.

In the information processing apparatus, the behavior recognizing unitmay further include a sensor data processing unit having: a sensor datastorage unit that stores the sensor data in an FIFO manner; and a sensordata calculation unit that performs a predetermined calculation by usingthe sensor data, and in which each of the behavior determination unitsdetermines the behavior exhibited by the user based on the calculationresult output from the sensor data processing unit.

In the information processing apparatus, the behavior informationpost-processing unit may further include an exclusive behaviorinformation re-processing unit that detects whether or not an exclusivecharacteristic representing that the user exhibits exclusive behaviorsthat are difficult to simultaneously perform exists in the behaviorinformation, and in which, in the case where two or more behaviors havethe exclusive characteristic, the exclusive behavior informationre-processing unit excludes behavior information corresponding to atleast one behavior among the two or more behaviors.

In the information processing apparatus, the behavior informationpost-processing unit may include a false recognition behaviorinformation re-processing unit that reprocesses the behavior informationfor each unit time based on a behavior information necessary conditionnecessary for the user to exhibit each behavior, and in which, in thecase where the behavior information does not satisfy the behaviorinformation necessary condition, the false recognition behaviorinformation re-processing unit corrects the behavior informationcorresponding to the behavior.

In the information processing apparatus, the behavior informationpost-processing unit may include a behavior information real-timeadjusting unit that determines that the user exhibits each behavior atthe time point that is earlier than the time point at which the behaviorrecognizing unit transmits the behavior information to the behaviormanager by the time necessary for the behavior recognizing unit togenerate the behavior information corresponding to each behavior.

In the case where two or more behaviors performed within a predeterminedtime are similar to each other, the behavior information post-processingunit may compare summed times of the behavior information correspondingto the two or more behaviors and select the behavior information havingthe longest summed time as the behavior information for thepredetermined time.

In the information processing apparatus, the sensor data may includefirst to third acceleration sensor data that are data regardingaccelerations in predetermined coordinate axes, in which the sensor datacalculation unit calculates variance values of the first to thirdacceleration sensor data in a first predetermined time stored in thesensor data storage unit, and in which, in the case where the maximumvariance value that is the largest variance value is smaller than a stoprecognition value for recognizing that the user stops and a time whenthe maximum variance value is smaller than the stop recognition valuecontinues to be longer than a stop recognition time when the user isrecognized as stopping, the stopped state determination unit generatesthe behavior information indicating that the user stops, and in the casewhere the maximum variance value is smaller than the stop recognitionvalue and the time when the maximum variance value is smaller than thestop recognition value does not continue to be longer than the stoprecognition time, the stopped state determination unit generates thebehavior information indicating that the user temporarily stops.

In the information processing apparatus, the sensor data may includefirst to third acceleration sensor data that are data regardingaccelerations in predetermined coordinate axes, in which the sensor datacalculation unit calculates variance values of the first to thirdacceleration sensor data in a second predetermined time stored in thesensor data storage unit and the maximum variance value that is thelargest variance value, calculates an autocorrelation function of theacceleration sensor data stored in the sensor data storage unit and amaximum value of the autocorrelation function to calculatewalking/running frequency data at the time when the user walks or runs,and calculates walking/running determination data for determiningwhether or not the user walks or runs by multiplying the walking/runningfrequency data with the maximum variance value, and in which, in thecase where a value of the walking/running determination data is largerthan a minimum walking recognition value that is a lower limit value forrecognizing that the user walks and smaller than a maximum walkingrecognition value that is an upper limit value for recognizing that theuser walks, the walking/running state determination unit generates thebehavior information indicating that the user walks, and in the casewhere the value of the walking/running determination data is larger thanthe maximum walking recognition value, the walking/running statedetermination unit generates the behavior information indicating thatthe user runs.

In the information processing apparatus, the sensor data calculationunit may integrate the walking/running frequency data, and thewalking/running state determination unit may generate the behaviorinformation corresponding to the number of steps of the user from theresult of the integration.

In the information processing apparatus, the sensor data may includefirst to third acceleration sensor data that are data regardingaccelerations in predetermined coordinate axes, in which the sensor datacalculation unit calculates a jumping state determination value bycalculating magnitudes of jumping accelerations represented bymagnitudes of the first to third acceleration sensor data, and in which,in the case where the jumping state determination value is larger than aminimum jumping recognition value that is a lower limit value forrecognizing that the user jumps, the jumping state determination unitgenerates the behavior information indicating that the user jumps.

In the information processing apparatus, the sensor data may includefirst to third acceleration sensor data that are data regardingaccelerations in predetermined coordinate axes, in which the sensor datacalculation unit calculates first to third gravity data in thepredetermined coordinate axes based on the first to third accelerationsensor data, calculates first gravity change data representing how muchthe first gravity data are changed from the first gravity data that arepreviously stored in the storage unit, second gravity change datarepresenting how much the second gravity data are changed from thesecond gravity data that are previously stored in the storage unit, andthird gravity change data representing how much the third gravity dataare changed from the third gravity data that are previously stored inthe storage unit, and calculates a posture change determination value ofdetermining whether or not the user changes the posture, which isrepresented by magnitudes of the first gravity change data, the secondgravity change data, and the third gravity change data, and in which, inthe case where the posture change determination value is larger than aminimum posture change recognition value that is a lower limit value forrecognizing that the user changes the posture and in the case where theuser is already standing, the posture change determination unitgenerates the behavior information indicating that the user sits, and inthe case where the posture change determination value is larger than theminimum posture change recognition value and in the case where the useris already sitting, the posture change determination unit generates thebehavior information indicating that the user stands.

In the information processing apparatus, the sensor data may includefirst to third acceleration sensor data that are data regardingaccelerations in predetermined coordinate axes, in which the sensor datacalculation unit calculates gravity direction acceleration sensor datathat is information indicating the acceleration in the gravity directionbased on the first acceleration sensor data, the second accelerationsensor data, and the third acceleration sensor data and calculateselevator rising determination data of determining whether or not theuser boards the elevator by calculating a difference between the gravitydirection acceleration sensor data and the gravity, in which in the casewhere the elevator rising determination data is larger than apredetermined value D_(α) at first and, after that, smaller than apredetermined value D_(β), the elevator boarding determination unitgenerates the behavior information indicating that the user is rising atin the elevator, and in the case where elevator rising determinationdata is smaller than the predetermined value D_(β) at first and, afterthat, larger than the predetermined value D_(α), the elevator boardingdetermination unit generates the behavior information indicating thatthe user is descending at in the elevator, wherein in which the D_(α) isa minimum elevator rising recognition value that is a lower limit valuefor recognizing that the user starts to rise at in the elevator, andwherein in which the D_(β) is a maximum elevator descending recognitionvalue that is an upper limit value for recognizing that the user startsto descend in the elevator.

In the information processing apparatus, the sensor data calculationunit may calculate gravity adjusting data represented by the magnitudesof the first acceleration sensor data, the second acceleration sensordata, and the third acceleration sensor data to allow the value of thegravity to be corrected, record the gravity adjusting data in the sensordata storage unit, and calculate a gravity adjusting variance value thatis a variance value of the gravity adjusting data stored in the sensordata storage unit and a gravity adjusting average data that is anaverage value of the gravity adjusting data, and in which, in the casewhere the gravity adjusting variance value is smaller than a maximumallowable gravity adjusting variance value that is a maximum variancevalue for allowing the gravity to be adjusted, in the case where thegravity adjusting average data is larger than a minimum allowablegravity average value that is a minimum average value of allowing thegravity to be adjusted, and in the case where the gravity adjustingaverage data is smaller than a maximum allowable gravity average valuethat is a maximum average value of allowing the gravity to be adjusted,the sensor data calculation unit considers the value of the gravityadjusting average data as the gravity after correction and performscalculation by using the gravity after correction instead of thegravity.

In the information processing apparatus, the sensor data may includefirst to third acceleration sensor data that are data regardingaccelerations in predetermined coordinate axes, in which the sensor datacalculation unit calculates horizontal direction acceleration sensordata and vertical direction acceleration sensor data based on the firstto third acceleration sensor data, records the horizontal directionacceleration sensor data and the vertical direction acceleration sensordata in the sensor data storage unit, calculates a horizontal directionvariance value based on the horizontal direction acceleration sensordata recorded in the sensor data storage unit, calculates a verticaldirection variance value based on the vertical direction accelerationsensor data recorded in the sensor data storage unit, and calculateselectric train boarding determination data of determining whether or notthe user boards the electric train by integrating the small variancevalue between the horizontal direction variance value and the verticaldirection variance value, and in which, in the case where the electrictrain boarding determination data is larger than a minimum electrictrain boarding recognition value that is a lower limit value forrecognizing that the user boards the electric train, the electric trainboarding determination unit generates the behavior informationindicating that the user boards the electric train.

In the information processing apparatus, in the case where the verticaldirection variance value is equal to or smaller than a minimum allowablevertical variance value that is a minimum allowable vertical directionvariance value, or in the case where the vertical direction variancevalue is equal to or larger than a maximum allowable vertical variancevalue that is a maximum allowable vertical direction variance value, thesensor data calculation unit may calculate the electric train boardingdetermination data as zero.

In the information processing apparatus, the sensor data may includefirst to third acceleration sensor data that are data regardingaccelerations in predetermined coordinate axes and first to third gyrosensor data that are data regarding gyros in predetermined coordinateaxes, in which the sensor data calculation unit calculates an angularvelocity in the gravity direction based on the first to thirdacceleration sensor data, from which the frequency area is removed, andthe first to third gyro sensor data, and in which, in the case where theangular velocity is smaller than a maximum turning-to-the-rightrecognition value that is an upper limit value for recognizing that theuser turns to the right, the turning-to-the-right/turning-to-the-leftdetermination unit generates the behavior information indicating thatthe user turns to the right, and in the case where angular velocity islarger than a minimum turning-to-the-left recognition value that is alower limit value for recognizing that the user turns to the left, theturning-to-the-right/turning-to-the-left determination unit generatesthe behavior information indicating that the user turns to the left.

In the information processing apparatus, the sensor data may includefirst to third acceleration sensor data that are data regardingaccelerations in predetermined coordinate axes, in which the sensor datacalculation unit calculates a value of the identification function byusing a characteristic vector generated based on the first to thirdacceleration sensor data and the identification function set accordingto the type of vehicle, and in which, in the case where the calculatedvalue of the identification function is larger than a vehicle boardingrecognition value that is used to recognize whether or not to board thevehicle corresponding to the identification function, the vehicleboarding determination unit generates the behavior informationindicating that the user boards the vehicle corresponding to theidentification function.

According to another embodiment of the present invention, there isprovided an information processing method including the steps of:sensing a user behavior and generating sensor data corresponding to theuser behavior; recognizing the behavior exhibited by the user byperforming a predetermined threshold value process on the sensor dataand generating behavior information that is information indicating thebehavior exhibited by the user; managing the behavior informationgenerated by the behavior recognizing unit in correspondence with thetime point at which the behavior corresponding to the behaviorinformation is exhibited; and performing a predetermined post-process onthe behavior information managed by the behavior manager, in which, thebehavior recognition further includes a plurality of steps ofdetermining behaviors specified to the behaviors exhibited by the userand generating the behavior information based on the determinationresults of the plurality of steps of determining the behaviors.

According to still another embodiment of the present invention, there isprovided a program causing a computer including a predetermined sensorto execute: a sensor data generation function of sensing a user behaviorand generates sensor data corresponding to the user behavior; a behaviorrecognition function of recognizing the behavior exhibited by the userby performing a predetermined threshold value process on the sensor dataand generating behavior information that is information indicating thebehavior exhibited by the user; a behavior managing function of managingthe behavior information generated by the behavior recognizing unit incorrespondence with the time point at which the behavior correspondingto the behavior information is exhibited; and a behavior informationpost-process function of performing a predetermined post-process on thebehavior information managed by the behavior manager, in which thebehavior recognition function further includes a plurality of behaviordetermination functions specified to specific behaviors exhibited by theuser and generates the behavior information based on the determinationresults of the plurality of behavior determination functions.

According to a further still another embodiment of the presentinvention, there is provided a computer-readable recording medium, onwhich the program is recorded.

As described above, according to the invention, the accuracy of the userbehavior recognition function may be improved by the filtering functionand the calculation function for each behavior and by adjusting therecognition result of the behavior.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram illustrating a network that is adaptable totechnologies according to embodiments of the invention.

FIG. 2 is a diagram illustrating an apparatus configuration of aninformation processing apparatus according to the embodiments of theinvention.

FIG. 3 is a diagram illustrating a functional configuration of theinformation processing apparatus according to a first embodiment of theinvention.

FIG. 4 is a diagram illustrating an overview of an informationprocessing method of the information processing apparatus according tothe embodiment of the invention.

FIG. 5 is a diagram illustrating an overview of an informationprocessing method of the information processing apparatus according tothe embodiment of the invention.

FIG. 6 is a diagram illustrating an overview of an informationprocessing method of the information processing apparatus according tothe embodiment of the invention.

FIG. 7 is a diagram illustrating an overview of an informationprocessing method of the information processing apparatus according tothe embodiment of the invention.

FIG. 8 is a diagram illustrating an overview of an informationprocessing method of the information processing apparatus according tothe embodiment of the invention.

FIG. 9 is a diagram illustrating a flow of an information processingmethod of the information processing apparatus according to theembodiment of the invention.

FIG. 10 is a diagram illustrating a flow of an information processingmethod of the information processing apparatus according to theembodiment of the invention.

FIG. 11 is a diagram illustrating a flow of a method of recognizingstopping and temporary stopping in the information processing apparatusaccording to the embodiment of the invention.

FIG. 12 is a diagram illustrating a flow of a method of recognizingwalking and running in the information processing apparatus according tothe embodiment of the invention.

FIG. 13 is a diagram illustrating a flow of a method of recognizingjumping in the information processing apparatus according to theembodiment of the invention.

FIG. 14 is a diagram illustrating a flow of a method of recognizingposture change in the information processing apparatus according to theembodiment of the invention.

FIG. 15 is a diagram illustrating a flow of a method of recognizingboarding an elevator in the information processing apparatus accordingto the embodiment of the invention.

FIG. 16 is a diagram illustrating a flow of a method of recognizingboarding an electric train in the information processing apparatusaccording to the embodiment of the invention.

FIG. 17 is a diagram illustrating a flow of a method of recognizingturning-to-the-right or turning-to-the-left in the informationprocessing apparatus according to the embodiment of the invention.

FIG. 18 is a diagram illustrating a behavior information managing methodin the information processing apparatus according to the embodiment ofthe invention.

FIG. 19 is a diagram illustrating a behavior information post-processingmethod in the information processing apparatus according to theembodiment of the invention.

FIG. 20 is a diagram illustrating a behavior information post-processingmethod in the information processing apparatus according to theembodiment of the invention.

FIG. 21 is a diagram illustrating a functional configuration of amodified example of the information processing apparatus according tothe embodiment of the invention.

FIGS. 22A to 22C are diagrams illustrating examples of an informationprocessing method in the modified example of the information processingapparatus according to the embodiment of the invention.

FIG. 23 is a diagram illustrating a flow of an information processingmethod in the modified example of the information processing apparatusaccording to the embodiment of the invention.

FIG. 24 is a diagram illustrating a functional configuration of aninformation processing apparatus according to a second embodiment of theinvention.

FIG. 25 is a diagram illustrating a flow of an information processingmethod in the information processing apparatus according to theembodiment of the invention.

FIG. 26 is a diagram illustrating a flow of a method of recognizingboarding a vehicle in the information processing apparatus according tothe embodiment of the invention.

FIG. 27 is a diagram illustrating a hardware configuration of aninformation processing apparatus according to the embodiment of theinvention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Hereinafter, exemplary embodiments of the invention will be describedwith reference to the accompanying drawings. In addition, in thespecification and drawings, elements having the substantially samefunctional configurations are denoted by the same reference numerals,and description thereof is omitted.

Flow of Description

In the specification, the flow of description is as follows. First, aconfiguration of a network including an information processing apparatusaccording to embodiments of the invention will be described withreference to FIG. 1. Next, an example of a configuration of theinformation processing apparatus according to the embodiments will bedescribed with reference to FIG. 2.

Next, a functional configuration of an information processing apparatusaccording to a first embodiment of the invention will be described withreference to FIG. 3. Next, an overview and application examples of theinformation processing method according to the first embodiment of theinvention will be described with reference to FIGS. 4 to 20. Next,modified examples of the information processing method according to thefirst embodiment of the invention will be described with reference toFIGS. 21 to 23.

Next, a functional configuration of an information processing methodaccording to a second embodiment of the invention will be described withreference to FIG. 24. Next, an overview and application example of theinformation processing method according to the second embodiment of theinvention will be described with reference to FIGS. 25 and 26.

In addition, a hardware configuration capable of implementing functionsof the information processing apparatus according to the embodiments ofthe invention will be described with reference to FIG. 27. Finally,together with the technical concepts of the embodiments, functions andeffects obtained from the technical concepts will be simply described.

1. Example of Configuration of Network

2. Example of Configuration of Information Processing Apparatus 100, 500

3. Functional Configuration of Information Processing Apparatus 100according to First Embodiment of the Invention

4. Overview of Information Processing Method in Information ProcessingApparatus 100

5. Application Examples of Information Processing Method in InformationProcessing Apparatus 100

6. Modified Examples of First Embodiment

7. Functional Configuration of Information Processing Apparatus 500according to Second Embodiment of the Invention

8. Application Examples of Information Processing Method in InformationProcessing Apparatus 500

9. Example of Hardware Configuration of Information Processing Apparatus100, 500

10. Statistics

1. Example of Configuration of Network

First, a configuration of a network including an information processingapparatus according to embodiments of the invention will be describedwith reference to FIG. 1. FIG. 1 is a diagram illustrating an example ofa system configuration of an information processing system 1 accordingto the embodiment.

As shown in FIG. 1, the information processing system 1 mainly includesan information processing apparatus 100 (information processingapparatus 500, hereinafter, this is the same in the descriptionreferring to FIGS. 1 and 2), a server 102, and a communication network104.

The information processing apparatus 100 performs a process based onpredetermined data in order to display behavior representing datareceived from the server 102 as an object on a display screen. Inaddition, the information processing apparatus 100 generates objectsbased on behavior information corresponding to user behavior andtransmits the objects to the server 102. The information processingapparatus 100 can perform various processes as well as the aboveprocesses. Hereinafter, the information processing apparatus 100 will bedescribed in detail again. In addition, as examples of predetermineddata, there are acceleration sensor data and gyro sensor data based onbehavior carried by the user. The predetermined data are described indetail as follows.

The server 102 supplies behavior information, which is transmitted froman information processing apparatus 100, to a different informationprocessing apparatus 100. In addition, the server 102 supplies thebehavior information, which is transmitted from the informationprocessing apparatus 100, to the different information processingapparatus 100.

The communication network 104 is a communication line network thatconnects the information processing apparatus 100 and the server 102 soas to be bi-directionally communicatable or one-directionallycommunicatable. The communication network 104 includes, for example, theInternet, an NGN (Next Generation Network) net, a telephone network, asatellite communication network, a public line network such as abroadcast communication line, WAN (Wide Area Network), LAN (Local AreaNetwork), IP-VPN (Internet Protocol-Virtual Private Network), Ethernet(registered trade mark), and a leased line network such as a wirelessLAN. The communication network may be a wired or wireless network.

The server 102 supplies the behavior information acquired from theinformation processing apparatus 100 through the communication network104 to the different information processing apparatus 100. Theinformation processing apparatus 100 generates a picture signal, inwhich a plurality of users is displayed as objects, by processing thebehavior information acquired from the server 102 and the behaviorinformation generated by the apparatus 100.

2. Example of Configuration of Information Processing Apparatus 100, 500

Now, an example of a configuration of the information processingapparatus 100 will be described with reference to FIG. 2. FIG. 2 is adiagram illustrating an example of a configuration of the informationprocessing apparatus 100. In FIG. 2, in order to obtain the effects ofthe invention, a mobile phone is exemplified as a preferred informationprocessing apparatus 100. However, in FIG. 2, only the important keysused for input manipulations according to the embodiment are shown.

As shown in FIG. 2, the information processing apparatus 100 includes adisplay screen 160, an input key 162, a communication key 164, a clearkey 166, a power key 168, a menu key 170, a mail key 172, and a memorykey 174, a communication key 176, and an arrow key 178.

First, the information processing apparatus 100 is provided with thedisplay screen 160. The display screen 160 is used to display atransmitted/received e-mail or to display various types of information.In addition, the display screen 160 may have a touch panel function.

In addition, the information processing apparatus 100 is provided withthe input key 162. The input key 162 is used to input characters or thelike in the case of generating the e-mail. In addition, the input key162 is also used to input the number of the party being called in thecase of making a phone call.

In addition, the information processing apparatus 100 is provided withthe communication key 164. The communication key 164 is used to activatethe call. In addition, the information processing apparatus 100 isprovided with the clear key 166. The clear key 166 is used to clearvarious types of information. In addition, the information processingapparatus 100 is provided with the power key 168. The power key 168 isused to power on the information processing apparatus 100.

In addition, the information processing apparatus 100 is provided withthe menu key 170. The menu key 170 is used to display various types ofmenu. In addition, the information processing apparatus 100 is providedwith the mail key 172. The mail key 172 is used to make the displayscreen for generating a mail pop up. In addition, the informationprocessing apparatus 100 is provided with the memory key 174. The memorykey 174 is used to display, for example, other users' phone numbers ormail addresses that have been registered by the user.

In addition, the information processing apparatus 100 is provided withthe communication key 176. The communication key 176 is used toactivate, for example, the Internet connection. In addition, theinformation processing apparatus 100 is provided with the arrow key 178.The arrow key 178 is used to select, for example, various types ofinformation output on the display screen with a cursor.

In addition, the mobile phone as the example of the informationprocessing apparatus 100 is not limited to a specific one as long as ithas the above-described form and functions.

3. Functional Configuration of Information Processing Apparatus 100According to First Embodiment of the Invention

Next, a functional configuration of the information processing apparatus100 will be described with reference to FIG. 3. FIG. 3 is a diagramillustrating an example of a functional configuration of the informationprocessing apparatus 100 according to the first embodiment of theinvention. The information processing apparatus 100 has features interms of a filtering function and calculation function for the sensordata depending on the user behavior and a post-process function forrecognition results of each behavior.

The information processing apparatus 100 includes a sensor datagenerator 110, a behavior recognizing unit 112, a behavior manager 114,a behavior information post-processing unit 116, a data controller 150,a storage unit 152, a display controller 154, and a display screen 160.The behavior recognizing unit 112 includes a behavior determination unit118 and a sensor data processing unit 120. The behavior determinationunit 118 includes a stopped state determination unit 122, awalking/running state determination unit 124, a jumping statedetermination unit 126, a posture change determination unit 128, anelevator boarding determination unit 130, an electric train boardingdetermination unit 132, and a turning-to-the-right/turning-to-the-leftdetermination unit 134. The sensor data processing unit 120 includes asensor data calculation unit 136, a specific area remover 138, a lowerarea remover 140, and a sensor data storage unit 142. The behaviorinformation post-processing unit 116 includes an exclusive behaviorinformation re-processing unit 144, a false recognition behaviorinformation re-processing unit 146, and a behavior information real-timeadjusting unit 148.

The sensor data generator 110 senses the user behavior 156 and generatessensor data that is information corresponding to the user behavior. Inaddition, the herein-mentioned user behavior 156 denotes informationregarding the user's walking, running, standing, sitting, jumping,stopping, boarding an electric train, boarding an elevator, turning tothe right or left, or the like. The information on the user behavior 156is, for example, information indicating the user behavior accompaniedwith the information processing apparatus 100. The sensor data is basedon the behavior exhibited by the user, which is included in theinformation processing apparatus 100.

The behavior recognizing unit 112 acquires the sensor data from thesensor data generator 110. The behavior recognizing unit 112 recognizesthe behavior exhibited by the user by performing a predeterminedthreshold value process on the sensor data and generates the behaviorinformation that is the information indicating the behavior exhibited bythe user. The behavior recognizing unit 112 further includes a pluralityof behavior determination units 118 specified to the behaviors exhibitedby the user to generate the behavior information based on thedetermination results of the plurality of behavior determination units118. In addition, the sensor data includes, for example, accelerationsensor data and gyro sensor data.

In addition, the acceleration sensor data includes first accelerationsensor data, second acceleration sensor data, and third accelerationsensor data. The first acceleration sensor data are data regarding theacceleration in a predetermined coordinate axis. In addition, the secondacceleration sensor data are data regarding the acceleration in acoordinate axis different from the coordinate axis of the firstacceleration sensor data, for example, in a coordinate axisperpendicular to the coordinate axis of the first acceleration sensordata. In addition, the third acceleration sensor data are data regardingthe acceleration in a coordinate axis different from the coordinate axesof the first acceleration sensor data and the second acceleration sensordata, for example, in a coordinate axis perpendicular to the coordinateaxes of the first acceleration sensor data and the second accelerationsensor data.

The plurality of behavior determination units 118 includes a stoppedstate determination unit 122, a walking/running state determination unit124, a jumping state determination unit 126, a posture changedetermination unit 128, an elevator boarding determination unit 130, anelectric train boarding determination unit 132, and aturning-to-the-right/turning-to-the-left determination unit 134.

The stopped state determination unit 122 determines whether or not theuser is in the stopped state. The walking/running state determinationunit 124 determines whether the user is in the walking state or in therunning state. The jumping state determination unit 126 determineswhether or not the user is in the jumping state or in the non-jumpingstate. The posture change determination unit 128 determines whether theuser is in the sitting state or in the standing state. The elevatorboarding determination unit 130 determines whether or not the user is inthe boarding-elevator state. The electric train boarding determinationunit 132 determines whether or not the user is in the boarding-electrictrain state. The turning-to-the-right/turning-to-the-left determinationunit 134 determines whether the user turns to the right or the left. Inthis manner, in the information processing apparatus 100 according tothe embodiment, the behavior recognition functions specified to thebehaviors are included, so that the behaviors may be recognized with agood accuracy. The behavior recognition functions for the behaviors willbe described later.

The sensor data processing unit 120 receives a signal for performing theprocess based on the behaviors from the plurality of behaviordetermination units 118. The sensor data processing unit 120 performsthe process on the sensor data based on the signal to generate thebehavior information that is the information indicating the userbehavior. More specifically, the sensor data calculation unit 136, thespecific area remover 138, the lower area remover 140, and the sensordata storage unit 142 performs the above-described process bypredetermined processing methods specified to the behaviors. The sensordata calculation unit 136 performs a predetermined calculation by usingthe sensor data. The specific area remover 138 removes a range excludinga specific area from the input data. The lower area remover 140 removesa range smaller than a predetermined threshold value from the inputdata. The sensor data storage unit 142 records the sensor data in theFIFO (First In First Out) manner. A predetermined processing methodspecified to each behavior will be described later in detail withreference to FIGS. 11 to 17.

The behavior manager 114 manages the behavior information generated bythe behavior recognizing unit 112 in correspondence with the time pointat which the behavior corresponding to behavior information isexhibited. More specifically, the behavior manager 114 transfers themanaged behavior information to the behavior information post-processingunit 116. Next, the behavior information post-processing unit 116performs a predetermined post-process on the behavior information, andafter that, the behavior manager 114 acquires and manages the behaviorinformation.

As described above, the behavior information post-processing unit 116performs the predetermined post-process on the behavior informationinput by the behavior manager 114. The predetermined post-process isperformed by the exclusive behavior information re-processing unit 144,the false recognition behavior information re-processing unit 146, andthe behavior information real-time adjusting unit 148. On the basis ofthe exclusive characteristic in that the user is not allowed to exhibittwo or more behaviors simultaneously, the exclusive behavior informationre-processing unit 144 reprocesses the behavior informationcorresponding to each behavior for each unit time. More specifically, inthe case where two or more behaviors have the exclusive characteristic,the exclusive behavior information re-processing unit 144 excludes thebehavior information corresponding to at least one behavior among thetwo or more behaviors. In addition, the false recognition behaviorinformation re-processing unit 146 reprocesses the behavior informationfor each unit time based on the behavior information necessary conditionnecessary for the user to exhibit each behavior. More specifically, inthe case where the user behavior does not satisfy the behaviorinformation necessary condition, the false recognition behaviorinformation re-processing unit 146 excludes the behavior informationcorresponding to the behavior. In addition, the behavior informationreal-time adjusting unit 148 determines that the user exhibits eachbehavior at the time that is earlier than the time when the behaviorrecognizing unit 112 transmits the behavior information to the behaviormanager 114 by the time necessary for the behavior recognizing unit 112to generate the behavior information corresponding to each behavior. Thepredetermined post-process of the behavior information post-processingunit 116 will be described later with reference to FIGS. 18 to 21. Inthis manner, in the information processing apparatus 100 according tothe embodiment, since the above-described post-process is performed onthe behavior information, the behavior information specified to eachbehavior may be recognized with a good accuracy without falserecognition.

The data controller 150 acquires the behavior information, which issubject to the post-process, from the behavior manager 114. The datacontroller 150 may generate a picture signal that is an object based oneach behavior corresponding to the acquired behavior information.

In addition, the data controller 150 may acquire the behaviorinformation generated by the information processing apparatus 100 of adifferent user from the server 102. The different user denotes a userdifferent from the user having the information processing apparatus 100.Therefore, the data controller 150 may also generate a picture signalthat is an object based on each behavior corresponding to the behaviorinformation of the different user. Next, the data controller 150transmits the picture signal to the display controller 154. The displaycontroller 154 has a picture signal conversion control function.Therefore, after receiving the picture signal, the display controller154 may display the picture signal on the display screen 160. As aresult, for example, the information processing apparatus 100 disposesobjects regarding the behavior information of different users as well asthe user having the information processing apparatus 100 on the displayscreen 160 to display the objects as picture signals. In this manner,according to the information processing apparatus 100 according to theembodiment, the user may, for example, check other user behaviors.

The storage unit 152 may store the behavior information acquired by thedata controller 150. Therefore, the data controller 150 may acquire thepast behavior information from the display controller 154 to generate apicture signal that is an object based on each behavior corresponding tothe past behavior information. In this manner, according to theinformation processing apparatus 100, the user may check the pastbehavior of the user and the behavior of the other users.

4. Overview of Information Processing Method in Information ProcessingApparatus 100

4-1. Behavior Recognition Function and Behavior Information Post-ProcessFunction

Next, the behavior recognition function and the behavior informationpost-process function will be described with reference to FIG. 4. FIG. 4is a diagram illustrating the overview of the behavior recognitionfunction and the behavior information post-process function. First, thesensor data generator 110 generates the sensor data 200 based on theuser behavior. The behavior recognizing unit 112, the behavior manager114, and the behavior information post-processing unit 116 performpredetermined processes corresponding to the behaviors with respect tothe sensor data. After the process, the behavior information 210indicating which behavior the user performs every time is generated.Each of reference numerals 212, 214, 216, 218, 220, and 222 denoteswhether or not each behavior is performed each time. Details will bedescribed later.

FIG. 5 is a diagram illustrating an example of usage of the informationprocessing apparatus 100 according to the embodiment. As shown in FIG.5, for example, the information processing apparatus 100 is received ina pocket or the like of clothes that a user 1000 wears. The displayscreen 160 of the information processing apparatus 100 displays whichbehavior the user 1000 actually exhibits. The behavior state of theother persons as well as the behavior state of the user 1000 may bedisplayed through the server or the like.

FIG. 6 is a detailed diagram illustrating the behavior recognitionfunction and the behavior information post-process function. First, thesensor data generator 110 generates the sensor data 200 based on theuser behavior. Next, the behavior recognizing unit 112 recognizes thebehavior exhibited by the user by performing a predetermined thresholdvalue process on the sensor data 200 and generates the behaviorinformation 202 that is the information indicating the behaviorexhibited by the user. In addition, the behavior manager 114 manages thebehavior information generated by the behavior recognizing unit 112 asdata 206 in correspondence with the time point at which the behaviorcorresponding to the behavior information is exhibited. Next, thebehavior information post-processing unit 116 performs a predeterminedpost-process on the behavior information managed by the behavior manager114. The behavior information post-processing unit 116 performs apredetermined post-process on the data 206 of each behavior recorded inthe FIFO manner. The detailed post-processing method will be describedlater. In this manner, the behavior information 210 that is subject tothe post-process 204 is obtained, so that the accuracy of the behaviorcan be improved by the information processing apparatus 100.

4-2. Behavior Recognition Function

FIG. 7 is a diagram illustrating the overview of the behaviorrecognition function. The behavior recognizing unit 112 generates thebehavior information 202 for the sensor data 200 generated by the sensordata generator 110. More specifically, the behavior recognizing unit 112that acquires the sensor data 200 allows the behavior determination unit118 specified to each behavior to perform a unique process specified toeach behavior in the sensor data processing unit 120. The sensor dataprocessing unit 120 performs a predetermined process for each behavior(reference numeral 224) to generate the behavior information 202. Thedetailed method of the predetermined process will be described later. Inthis manner, the behavior recognizing unit 112 has the processing methodspecified to each behavior, so that each behavior may be recognized witha good accuracy.

4-3. Behavior Information Post-Process Function

FIG. 8 is a diagram illustrating the overview of the behaviorinformation post-process function. The behavior manager 114 manages thebehavior information generated by the behavior recognizing unit 112 asdata 226 in correspondence with the time point at which the behaviorcorresponding to the behavior information is exhibited. Next, thebehavior information post-processing unit 116 performs a predeterminedpost-process on the behavior information 226 managed by the behaviormanager 114. The behavior information post-processing unit 116 performsa predetermined post-process on the data 228 of each behavior recordedin the FIFO manner. The post-process is performed by the exclusivebehavior information re-processing unit 144, the false recognitionbehavior information re-processing unit 146, and the behaviorinformation real-time adjusting unit 148. The detailed post-processingmethod will be described later. As a result, the behavior information210 that is subject to the post-process may be obtained. In this manner,the predetermined post-process is performed on the behavior informationgenerated by the behavior recognizing unit 112, so that the behaviorinformation may be generated without false recognition in comparisonwith the real behavior of the user.

5. Application Examples of Information Processing Method in InformationProcessing Apparatus 100

Next, application examples of the information processing method will bedescribed with reference to FIGS. 9 to 20. The information processingapparatus 100 according to the embodiment includes a behaviorrecognizing unit 112. The behavior recognizing unit 112 includes abehavior determination unit 118 and a sensor data processing unit 120.The behavior recognizing unit 112 includes a plurality of behaviordetermination units 118 that are specified to a specific behaviorexhibited by the user. More specifically, the behavior determinationunits 118 include a stopped state determination unit 122, awalking/running state determination unit 124, a jumping statedetermination unit 126, a posture change determination unit 128, anelevator boarding determination unit 130, an electric train boardingdetermination unit 132, and a turning-to-the-right/turning-to-the-leftdetermination unit 134. In the information processing apparatus 100according to the embodiment, the behavior recognition functionsspecified to the behaviors are included, so that the behaviors may berecognized with a good accuracy. The sensor data processing unit 120includes a sensor data calculation unit 136, a specific area remover138, a lower area remover 140, and a sensor data storage unit 142 so asto perform predetermined processes for the behaviors according toinstructions of the behavior determination units 118.

The sensor data calculation unit 136 performs a predeterminedcalculation on the sensor data. The specific area remover 138 removes arange excluding a predetermined area of the sensor data. The lower arearemover 140 removes an area equal to or smaller than a predeterminedvalue of the sensor data. The sensor data storage unit 142 records thesensor data in the FIFO manner. Hereinafter, the behavior recognitionmethod for each behavior will be described in detail.

In addition, the sensor data that are generated by the sensor datagenerator 110 included in the information processing apparatus 100according to the embodiment include acceleration sensor data and gyrosensor data. The acceleration sensor data include first accelerationsensor data, second acceleration sensor data, and third accelerationsensor data. The first acceleration sensor data are the data regardingacceleration according to a predetermined coordinate axis. In addition,the second acceleration sensor data are the data regarding accelerationaccording to a coordinate axis different from that of the firstacceleration sensor data, for example, according to a coordinate axisperpendicular to the coordinate axis of the first acceleration sensordata. In addition, the third acceleration sensor data are the dataregarding acceleration according to a coordinate axis different fromthose of the first acceleration sensor data and the second accelerationsensor data, for example, according to a coordinate axis perpendicularto the coordinate axes of the first acceleration sensor data and thesecond acceleration sensor data. Herein, as marked in FIGS. 11 to 17referred to in the hereinafter description, the x-acc is an example ofthe first acceleration sensor data and indicates the acceleration sensordata in the X axis direction of the coordinate axes including three axesof the X axis, the Y axis, and the Z axis. In addition, the y-acc is anexample of the second acceleration sensor data and indicates theacceleration sensor data in the Y axis direction. In addition, the z-accis an example of the third acceleration sensor data and indicates theacceleration sensor data in the Z axis direction. In addition, thex-gyro is an example of the first gyro sensor data and indicates thegyro sensor data in the X axis direction of the coordinate axesincluding three axes of the X axis, the Y axis, and the Z axis. Inaddition, the y-gyro is an example of the second gyro sensor data andindicates the gyro sensor data in the Y axis direction. In addition, thez-gyro is an example of the third gyro sensor data and indicates thegyro sensor data in the Z axis direction.

5-1. Behavior Recognition Function and Behavior Information Post-ProcessFunction

First, a flow of a behavior recognition method and a behaviorinformation post-processing method are described with reference to FIG.9. FIG. 9 is a diagram illustrating a flow of the behavior recognitionmethod and the behavior information post-processing method according tothe embodiment. With respect to a sample (user behavior) at a time pointt_(n), the sensor data generator 110 generates sensor data as an inputsignal. The behavior recognizing unit 112 performs a digital filterprocess (signal/statistic process) on the sensor data (S100). As aresult, the behavior recognizing unit 112 calculates a detected valuerepresenting a feature of each behavior to perform a threshold valueprocess (S102). As the result thereof, in the case where the behaviorrecognizing unit 112 determines that the detected value exceeds athreshold value range, the behavior manager 114 erects an invalid flagto perform the flag state management for each behavior (S104). Inaddition, in the case where the behavior recognizing unit 112 determinesthat the detected value is within the threshold value range, thebehavior manager 114 erects a valid flag to perform the flag statemanagement for each behavior (S104). In addition, the behavior manager114 determines whether or not a behavior exists (S106), and if thebehavior exists, behavior is labeled and recorded in the FIFO manner(S108). The behavior manager 114 records starting/ending time points ofbehavior and a recognition state thereof. Next, the behavior informationpost-processing unit 116 performs a post-process for the recognitionresult (S110). As an example of the post-process, there is a process ofensuring the consistency of an exclusive behavior, which is performed bythe exclusive behavior information re-calculation unit 144 of thebehavior information post-processing unit 116. In addition, there is aprocess of avoiding a false recognition based on the empirical rule,which is performed by the false recognition behavior informationre-calculation unit 146 of the behavior information post-processing unit116. In addition, there is a process of adjusting a time delay of adigital filter, which is performed by the behavior information real-timeadjusting unit 148 of the behavior information post-processing unit 116.In this manner, the recognition process for the sample at the time pointt_(n) is carried out. Particularly, a behavior recognition method havinga digital filtering function corresponding to each behavior is describedlater in detail.

In addition, the function of acquiring the recognition result of thepast time point t_(n-d) will be described with reference to FIG. 10.FIG. 10 is a diagram illustrating a flow of the behavior informationpost-process function. The behavior manager 114 calculates a time delayas a designated time for the recognition result of the time pointt_(n-d) (S120). The behavior manager 114 scans labels sequentially fromthe head of the data recorded in the FIFO manner (S122). Next, thebehavior manager 114 determines whether or not the label exists at thetime point before the designated time (S124). As a result, it may berecognized whether or not the behavior exists at the time point t_(n-d).

5-2. Method of Recognizing Whether or not the User Stops or TemporarilyStops

First, a method of recognizing whether the user temporarily stops orstops will be described with reference to FIG. 11. FIG. 11 is a diagramillustrating a flow of the method of recognizing whether the usertemporarily stops or stops in the behavior recognizing unit 112. First,the sensor data generator 110 senses the user behavior 156 and generatessensor data. Next, the behavior recognizing unit 112 acquires the sensordata from the sensor data generator 110. In order to recognize whetherthe user temporarily stops or stops, first, the stopped statedetermination unit 122 in the behavior determination unit 118 transmitsto the sensor data processing unit 120 a signal for recognizing whetherthe user temporarily stops or stops. In addition, the sensor dataprocessing unit 120 acquires the sensor data from the sensor datagenerator 110.

Next, the sensor data storage unit 142 records the x-acc, the y-acc, andthe z-acc in the FIFO manner (S1000). After a predetermined amount ofthe data is recorded in the sensor data storage unit 142, the sensordata calculation unit 136 acquires the x-acc, the y-acc, and the z-accfrom the sensor data storage unit 142. Herein, the predetermined datamay be set to, for example, data corresponding to only a time set by theinformation processing apparatus 100 or data corresponding to only atime set by the user. Next, the sensor data calculation unit 136calculates variance values of the x-acc, the y-acc, and the z-acc(S1002). In addition, next, the sensor data calculation unit 136extracts the maximum variance value (det) for determining stopping, thatis, the largest variance value among the variance values (S1004).

Next, the stopped state determination unit 122 acquires the maximumvariance value for determining stopping from the sensor data processingunit 120. The stopped state determination unit 122 determines whether ornot the maximum variance value for determining stopping is smaller thanthe stop recognition value D₁ in which the user is recognized asstopping (S1006). In the case where the maximum variance value fordetermining stopping is not smaller than the D₁, that is, equal to orlarger than the D₁, the stopped state determination unit 122 determinesthat the user does not stop. In other words, the user exhibits somebehavior. The stopped state determination unit 122 generates thebehavior information indicating that the user does not stop (S1014).

On the other hand, in the case where the maximum variance value fordetermining stopping is smaller than D₁, the stopped state determinationunit 122 determines whether or not the time smaller than D₁ in themaximum variance value continues to be longer than the stop recognitiontime T₁ (S1008). Herein, the stop recognition time T₁ is the minimumtime in which the user is recognized as stopping by the stopped statedetermination unit 122. In the case where the time smaller than D₁ inthe maximum variance value for determining stopping continues to belonger than T₁, the stopped state determination unit 122 determines thatthe user stops and generates the behavior information indicating thatthe user stops (S1010). On the other hand, in the case where the timesmaller than D₁ in the maximum variance value for determining stoppingdoes not continue to be longer than T₁, the stopped state determinationunit 122 determines that the user temporarily stops and generates thebehavior information indicating that the user temporarily stops (S1012).In addition, the D₁ and the T₁ may be set in advance by the informationprocessing apparatus 100, or the D₁ and the T₁ may be set in theinformation processing apparatus 100 by the user. In this manner, in theinformation processing apparatus 100 according to the embodiment, by thesensor data process function specified to each user behavior, it may berecognized with a good accuracy whether the user stops, temporarilystops, or exhibits a behavior other than these two behaviors.

5-3. Method of Recognizing Whether or not the User Walks or Runs

Next, a method of recognizing whether a user walks or runs will bedescribed with reference to FIG. 12. FIG. 12 is a diagram illustrating aflow of the method of recognizing whether the user walks or runs in thebehavior recognizing unit 112. First, the sensor data generator 110senses the user behavior 156 and generates sensor data. Next, thebehavior recognizing unit 112 acquires the sensor data from the sensordata generator 110. In order to recognize whether to walk or to run,first, the walking/running state determination unit 124 in the behaviordetermination unit 118 transmits to the sensor data processing unit 120a signal for recognizing whether the user walks or runs. In addition,the sensor data processing unit 120 acquires the sensor data from thesensor data generator 110.

Next, the specific area remover 138 removes a frequency in a rangeexcluding a walking/running recognition frequency area, in which theuser is recognized as walking or running, in the x-acc, the y-acc, andthe z-acc (S2000). In other words, the specific area remover 138 mayfunction as a bandpass filter (BPF). In addition, the walking/runningrecognition frequency area may be set by the information processingapparatus 100 in advance. Otherwise, the information processingapparatus 100 acquires the behavior pattern independent of the user, andthe walking/running recognition frequency area may be set according tothe user behavior. Next, the sensor data storage unit 142 records thex-acc, the y-acc, and the z-acc, which are subject to theabove-described process, in the FIFO manner (S2002). Next, after apredetermined amount of the data is recorded in the sensor data storageunit 142, the sensor data calculation unit 136 acquires the x-acc, they-acc, and the z-acc from the sensor data storage unit 142. Herein, thepredetermined data may be set to, for example, data corresponding toonly a time set by the information processing apparatus 100.

Next, the sensor data calculation unit 136 calculates a summaryautocorrelation function (SACF) for the x-acc, the y-acc, and the z-acc,of which a predetermined amount of the data is recorded in the FIFOmanner. In addition, the sensor data calculation unit 136 calculates anenhanced simplified autocorrelation function (ESACF) based on thesimplified autocorrelation function (SACF) (S2006). The occurrence ofthe peak of the SACF according to the time elapse corresponds to theperiodic motion of the walking and running in the sensor data. However,the SACF also includes data having a frequency that is an integralmultiple of the frequency representing the actual walking and running.Therefore, the sensor data calculation unit 136 may remove redundantpeak data and obtain only the frequency representing the actual walkingand running by calculating the ESACF. As a result, the sensor datacalculation unit 136 may calculate the frequency (freq) for determiningthe walking/running by calculating the peak based on the ESACF (S2008).

In addition, after the sensor data processing unit 120 acquires thesensor data from the sensor data generator 110, the sensor data storageunit 142 records the x-acc, the y-acc, and the z-acc in the FIFO manner(S2010). Next, after a predetermined amount of the data is recorded inthe sensor data storage unit 142, the sensor data calculation unit 136acquires the x-acc, the y-acc, and the z-acc from the sensor datastorage unit 142. Herein, the predetermined data may be set to, forexample, data corresponding only to a time set by the informationprocessing apparatus 100.

Next, the sensor data calculation unit 136 calculates variance values ofthe x-acc, the y-acc, and the z-acc, of which a predetermined amount ofthe data is recorded in the FIFO manner (S2012). In addition, next, thesensor data calculation unit 136 extracts the maximum variance value(var) for determining the walking/running that is the largest variancevalue among the variance values (S2014).

Next, the sensor data calculation unit 136 calculates a product of thefrequency (freq) for determining the walking/running and the maximumvariance value (var) for determining the walking/running (S2016). Inother words, to give a brief description, the number of steps per unittime corresponding to the walking/running is represented by the freq,and the magnitude of the motion corresponding to the walking/running isrepresented by the var. In other words, the walking/running may bedetermined by the number of steps and the magnitude of the motion, andas described later, in the case where the product of the freq and thevar is within a range of a predetermined area, it is determined that theuser walks. In addition, in the case where the product exceeds thepredetermined area, it is determined that the user runs. In addition, inthe case where the product does not reach the predetermined area, it isdetermined that the user neither walks nor runs.

Next, the lower area remover 140 removes a frequency area, in which theuser may be falsely recognized to walk or run, from the product andcalculates the walking/running determination data for determiningwhether the user walks or runs (S2018). In other words, the lower arearemover 140 may function as a lowpass filter (LPF). In addition, theremoved frequency area may be set by the information processingapparatus 100 in advance. Otherwise, the information processingapparatus 100 acquires the behavior pattern independent of the user, andthe frequency area may be set according to the user behavior.

Next, the walking/running state determination unit 124 acquires thewalking/running determination data from the sensor data processing unit120. The walking/running state determination unit 124 determines whetheror not the value of the walking/running determination data is largerthan the minimum walking recognition value D₂ that is a lower limitvalue for recognizing that the user walks (S2020). In addition, thewalking/running state determination unit 124 determines whether or notthe value of the walking/running determination data is smaller than themaximum walking recognition value D₃ that is an upper limit value forrecognizing that the user walks (S2020). In the case where the value ofthe walking/running determination data is larger than the D₂ and smallerthan the D₃, the walking/running state determination unit 124 generatesthe behavior information indicating that the user walks (S2022). Inaddition, the walking/running state determination unit 124 determineswhether or not the value of the walking/running determination data islarger than the D₃ (S2024). In the case where the value of thewalking/running determination data is larger than the D₃, thewalking/running state determination unit 124 generates the behaviorinformation indicating that the user runs (S2026). In addition, in thecase where the value of the walking/running determination data is equalto or smaller than the D₂, the walking/running state determination unit124 generates the behavior information indicating that the user neitherwalks nor runs (S2028). In this manner, in the information processingapparatus 100 according to the embodiment, by the sensor data processfunction specified to each user behavior, it may be recognized with agood accuracy whether the user walks, runs, or exhibits a behavior otherthan the two behaviors.

On the other hand, the sensor data calculation unit 136 may integratethe freq (S2028). In addition, according to the result of theintegration, the walking/running state determination unit 124 maygenerate the behavior information about the number of steps for apredetermined time. In other words, according to the informationprocessing apparatus 100, it may be recognized how long the user walksfor a predetermined time. In addition, the predetermined time may be,for example, a time set by the information processing apparatus 100 or atime set by the user.

5-4. Method of Recognizing Whether or not the User Jumps

Next, a method of recognizing whether or not the user jumps will bedescribed with reference to FIG. 13. FIG. 13 is a diagram illustrating aflow of the method of recognizing whether or not the user jumps in thebehavior recognizing unit 112. First, the sensor data generator 110senses the user behavior 156 and generates sensor data. Next, thebehavior recognizing unit 112 acquires the sensor data from the sensordata generator 110. In order to recognize whether or not the user jumps,first, the jumping state determination unit 126 in the behaviordetermination unit 118 transmits to the sensor data processing unit 120a signal for recognizing whether or not the user jumps. In addition, thesensor data processing unit 120 acquires the sensor data from the sensordata generator 110.

Next, the sensor data calculation unit 136 calculates a jumpingacceleration that is expressed by magnitudes in the x-acc, the y-acc,and the z-acc (S3000). Next, the specific area remover 138 removes afrequency in a range excluding the jumping recognition value area, inwhich the user is recognized as jumping at the jumping acceleration(S3002). In other words, the specific area remover 138 may perform afunction as a band pass filter (BPF). In addition, the jumpingrecognition value area may be set by the user or set by the informationprocessing apparatus 100 in advance. Otherwise, the informationprocessing apparatus 100 acquires the behavior pattern independently ofthe user, and the jumping recognition value area may be set according tothe user behavior. In addition, as a result, the specific area remover138 calculates a corrected jumping acceleration that is an absolutevalue for recognizing whether or not the user jumps (S3004). Morespecifically, for example, in comparison with the jumping acceleration,in the corrected jumping acceleration, the data component caused by theshaking or the vibration of the information processing apparatus 100,which may occur at the time of jumping, is removed. Next, the lower arearemover 140 removes a frequency area, in which the user may be falselyrecognized to jump at the corrected jumping acceleration (S3006). Inother words, the lower area remover 140 may perform a function as alowpass filter (LPF). In addition, the removed frequency area may be setby the user or set by the information processing apparatus 100 inadvance. Otherwise, the information processing apparatus 100 acquiresthe behavior pattern independently of the user, and the frequency areamay be set according to the user behavior. In addition, as a result, thelower area remover 140 calculates a jumping state determination value(det) for determining whether or not the user jumps.

Next, the jumping state determination unit 126 acquires the jumpingstate determination value from the sensor data processing unit 120. Thejumping state determination unit 126 determines whether or not thejumping state determination value is larger than the minimum jumpingrecognition value D₄ that is a lower limit value for recognizing thatthe user jumps (S3008). In the case where the value of the jumping statedetermination value is larger than the minimum jumping recognition valueD₄, the jumping state determination unit 126 generates the behaviorinformation indicating that the user jumps (S3010). On the other hand,in the case where the value of the jumping state determination value isequal to or smaller than the minimum jumping recognition value D₄, thejumping state determination unit 126 generates the behavior informationindicating that the user does not jump (S3012). In this manner, in theinformation processing apparatus 100 according to the embodiment, by thesensor data process function specified to each user behavior, it may berecognized with a good accuracy whether or not the user jumps.

5-5. Method of Recognizing Whether or not the User Sits or Stands

Next, a method of recognizing whether the user sits or stands will bedescribed with reference to FIG. 14. FIG. 14 is a diagram illustrating aflow of the method of recognizing whether the user sits or stands in thebehavior recognizing unit 112. First, the sensor data generator 110senses the user behavior 156 and generates sensor data. Next, thebehavior recognizing unit 112 acquires the sensor data from the sensordata generator 110. The recognition of the sitting or the standingincludes the recognition of the standing of the user who did sit and therecognition of the sitting of the user who did stand. In other words, itis to recognize the change in the user's posture. In this manner, inorder to recognize whether or not the user changes posture, first, theposture change determination unit 128 in the behavior determination unit118 transmits to the sensor data processing unit 120 a signal forrecognizing whether or not the user changes posture. In addition, thesensor data processing unit 120 acquires the sensor data from the sensordata generator 110.

Next, the lower area remover 140 removes a frequency area, in which theuser may be falsely recognized as changing posture in the x-acc, they-acc, and the z-acc (S4000). The lower area remover 140 may function asa lowpass filter (LPF). In addition, the removed first frequency areamay be set by the information processing apparatus 100 in advance.Otherwise, the information processing apparatus 100 acquires thebehavior pattern independently of the user, and the first frequency areamay be set according to user behavior. As a result, the lower arearemover 140 calculates the x-grav based on the x-acc, the y-grav basedon the y-acc, and the z-grav based on the z-acc. The x-grav is anexample of the first gravity data based on the first acceleration sensordata and indicates the acceleration sensor data in the X axis directionof the coordinate axes including three axes of the X axis, the Y axis,and the Z axis. The y-grav is an example of the second gravity databased on the second acceleration sensor data and indicates theacceleration sensor data in the Y axis direction of the coordinate axesincluding three axes of the X axis, the Y axis, and the Z axis. Thez-grav is an example of the third gravity data based on the thirdacceleration sensor data and indicates the acceleration sensor data inthe Z axis direction of the coordinate axes including three axes of theX axis, the Y axis, and the Z axis.

Next, the sensor data calculation unit 136 calculates the valueδ(x-grav) representing how much the calculated x-gray is changed fromthe x-grav before a predetermined time (S4002). The δ(x-grav) is anexample of the first gravity change data. In addition, the sensor datacalculation unit 136 calculates the δ(y-grav) representing how much thecalculated y-grav is changed from the y-grav before a predetermined time(S4002). The δ(y-grav) is an example of the second gravity change data.In addition, the sensor data calculation unit 136 calculates theδ(z-grav) representing how much the calculated z-grav is changed fromthe z-grav before a predetermined time (S4002). The δ(z-gray) is anexample of the first gravity change data. Next, the sensor datacalculation unit 136 calculates posture changed values representing themagnitudes of the δ(x-grav), the δ(y-grav), and the δ(z-grav) (S4004).The posture changed value allows the change in user posture to berecognized.

Next, the lower area remover 140 removes an area of the posture changedvalue, in which the user may be falsely recognized as changing posture(S4006). The lower area remover 140 may function as a lowpass filter(LPF). As a result, the lower area remover 140 calculates the posturechange determination value (det) for determining whether or not the userchanges posture. In addition, the removed area may be set by theinformation processing apparatus 100 in advance. Otherwise, theinformation processing apparatus 100 acquires the behavior patternindependently of the user, and the area may be set according to the userbehavior.

Next, the posture change determination unit 128 acquires the posturechange determination value from the sensor data processing unit 120. Inthe case where the minimum posture change recognition value D₅ that is alower limit value for recognizing that the user changes the posture islarger than the posture change determination value, the posture changedetermination unit 128 determines that the user changes the posture(S4008). In the case where the user changes the posture, the posturechange determination unit 128 determines whether the user is alreadystanding or sitting (S4010). In the case where the user is alreadystanding, the user changes posture to sitting, the posture changedetermination unit 128 generates the behavior information indicatingthat the user sits (S4012). In addition, in the case where the user isalready sitting, the user changes posture into standing, and the posturechange determination unit 128 generates the behavior informationindicating that the user stands (S4014). In other words, on the otherhand, in the case where the posture change determination value is equalto or smaller than the D₅, the user does not change posture, and theposture change determination unit 128 generates the behavior informationindicating that there is no change in the state with respect to thechange in posture (S4016). In this manner, in the information processingapparatus 100 according to the embodiment, by the sensor data processfunction specified to each user behavior, it may be recognized with agood accuracy whether or not the user changes posture. In other words,it may be recognized based on the determination of the change in userposture whether the user is in the sitting state or in the standingstate.

5-6. Method of Recognizing Whether or not the User Rises or Descends inElevator

Next, a method of recognizing whether or not the user boards an elevatorwill be described with reference to FIG. 15. FIG. 15 is a diagramillustrating a flow of the method of recognizing whether or not the userboards an elevator in the behavior recognizing unit 112. First, thesensor data generator 110 senses the user behavior 156 and generatessensor data. Next, the behavior recognizing unit 112 acquires the sensordata from the sensor data generator 110. In this manner, in order torecognize whether or not the user boards the elevator, first, theelevator boarding determination unit 130 in the behavior determinationunit 118 transmits to the sensor data processing unit 120 a signal forrecognizing whether or not the user boards an elevator. In addition, thesensor data processing unit 120 acquires the sensor data from the sensordata generator 110.

Next, the lower area remover 140 removes a frequency area, in which theacceleration in the gravity direction may be falsely recognized, basedon the x-acc, the y-acc, and the z-acc (S5000). The lower area remover140 may function as a lowpass filter (LPF). In addition, the removedfrequency area may be set by the information processing apparatus 100 inadvance. Otherwise, the information processing apparatus 100 acquiresthe behavior pattern independently of the user, and the frequency areamay be set according to the user behavior. Next, the sensor datacalculation unit 136 calculates the gravity direction accelerationsensor data (acc) based on the x-acc, the y-acc, and the z-acc, fromwhich the frequency area is removed (S5002).

On the other hand, the sensor data calculation unit 136 calculates thegravity adjusting data represented by the magnitudes of the x-acc, they-acc, and the z-acc of allowing the value of the gravity to be adjusted(S5004) and records the gravity adjusting data in the sensor datastorage unit 142 (S5006). The sensor data calculation unit 136calculates the gravity adjusting variance value (var) that is thevariance value of the gravity adjusting data, of which a predetermineddata amount is recorded (S5008). In addition, the sensor datacalculation unit 136 calculates the gravity adjusting average data thatare the average value of the gravity adjusting data, of which apredetermined data amount is recorded (S5008).

Next, the sensor data calculation unit 136 determines whether or not thegravity adjusting variance value is smaller than the maximum allowablegravity adjusting variance value V₁ that is the maximum variance valueof allowing the gravity adjusting (S5010). In the case where the gravityadjusting variance value is equal to or larger than the V₁, the sensordata calculation unit 136 does not update the value of gravity (S5012).The function is performed in the case where fine adjustment for gravityis necessary in the direction of the information processing apparatus100 accompanying the user. This is because the change in the gravityafter the adjustment is too large and the difference from the actualphenomenon is too large in the case where the gravity adjusting variancevalue is equal to or larger than the V₁.

On the other hand, the case where the gravity adjusting variance valueis smaller than maximum allowable gravity adjusting variance value V₁that is the maximum variance value of allowing the gravity adjustingwill be described. Sequentially, the sensor data calculation unit 136determines whether or not the gravity adjusting average data is largerthan the minimum allowable gravity average value A₁ that is the minimumaverage value of allowing the gravity adjusting and determines whetheror not the gravity adjusting average data is smaller than the maximumallowable gravity average value A₂ that is the maximum average value ofallowing the gravity adjusting (S5014). In the case where the value ofthe gravity adjusting average data is larger than the A₁ and smallerthan the A₂, the value of the gravity adjusting average data isconsidered to be the gravity after the adjusting. On the other hand, inthe case where the value of the gravity adjusting average data is equalto or smaller than the A₁ or equal to or larger than the A₂, the sensordata calculation unit 136 does not update the value of gravity (S5016).

Next, the lower area remover 140 removes a lower area, in which thegravity may be falsely recognized, from the gravity adjusting averagedata (S5018). The lower area remover 140 may function as a lowpassfilter (LPF). In addition, the removed frequency area may be set by theinformation processing apparatus 100 in advance. Otherwise, theinformation processing apparatus 100 acquires the behavior patternindependently of the user, and the frequency area may be set accordingto the user behavior. As a result, the lower area remover 140 calculatesthe corrected gravity adjusting average data.

Next, the sensor data calculation unit 136 calculates a differencebetween the gravity direction acceleration sensor data and the correctedgravity adjusting average data (S5020). In other words, it is determinedbased on the change in the gravity due to the user behavior whether ornot the user boards the elevator. Next, the lower area remover 140removes a frequency area, in which the user may be falsely recognized toboard the elevator, from the difference and calculates elevator risingdetermination data for determining whether or not the user boards theelevator. The removed frequency area may be set by the informationprocessing apparatus 100 in advance. Otherwise, the informationprocessing apparatus 100 acquires the behavior pattern independently ofthe user, and the frequency area may be set according to the userbehavior.

Next, the elevator boarding determination unit 130 acquires the elevatorrising determination data from the sensor data processing unit 120. Theelevator boarding determination unit 130 determines whether the elevatorrising determination data is larger or smaller than the predeterminedvalue D₆ (S5024) and determines whether the elevator risingdetermination data is larger or smaller than the predetermined value D₇(S5032). The predetermined value D₆ is the lower limit value forrecognizing that the user starts to rise in the elevator and an exampleof the D_(a). The predetermined value D₇ is the upper limit value forrecognizing that the user starts to descend in the elevator and anexample of the D_(p). More specifically, in the case where elevatorrising determination data is larger than the predetermined value D₆ atfirst and, after that, smaller than the predetermined value D₇, theelevator boarding determination unit 130 determines that the user isrising in the elevator. Next, the elevator boarding determination unit130 generates the behavior information indicating that the user isrising in the elevator (S5024, S5026, S5028, S5032, S5034, and S5038).In addition, in the case where the elevator rising determination data islarger than the predetermined value D₇ at first and, after that, smallerthan the predetermined value D₆, the elevator boarding determinationunit 130 determines that the user is descending in the elevator. Next,the elevator boarding determination unit 130 generates the behaviorinformation indicating that the user is descending in the elevator(S5024, S5026, S5030, S5032, S5034, and S5036). According to thismethod, since the user behavior is recognized based on the accelerationsensor data corresponding to, for example, the situation where the useris rising in the elevator or the situation after that, the falserecognition by a behavior that is performed by the user during theboarding of the elevator may be avoided.

In addition, in the case where the elevator rising determination data isequal to or smaller than the predetermined value D₆ and equal to orlarger than the predetermined value D₇, the elevator boardingdetermination unit 130 determines the user behavior (S5040). In the casewhere the user boards the elevator, the elevator boarding determinationunit 130 generates the behavior information indicating that the elevatoris not in the accelerated and decelerated states (S5042). In otherwords, according to the behavior information, it may be recognized thatthe elevator is stopped or in a uniform velocity motion. In addition, inthe case where the user does not board the elevator, the elevatorboarding determination unit 130 generates the behavior informationindicating that the user does not board the elevator (S5044). In thismanner, in the information processing apparatus 100 according to theembodiment, by the sensor data process function specified to each userbehavior, it may be recognized with a good accuracy whether the userboards the elevator to be rising or descending. In other words, bydetecting the acceleration or deceleration in the up and down directionsof the user, it may be recognized whether or not to board the elevator.

5-7. Method of Recognizing Whether or not the User Boards Electric Train

Next, a method of recognizing whether or not the user boards an electrictrain will be described with reference to FIG. 16. FIG. 16 is a diagramillustrating a flow of the method of recognizing whether or not the userboards an electric train in the behavior recognizing unit 112. First,the sensor data generator 110 senses the user behavior 156 and generatessensor data. Next, the behavior recognizing unit 112 acquires the sensordata from the sensor data generator 110. In this manner, in order torecognize whether or not the user boards the electric train, first, theelectric train boarding determination unit 132 in the behaviordetermination unit 118 transmits to the sensor data processing unit 120a signal for recognizing whether or not to board the electric train. Inaddition, the sensor data processing unit 120 acquires the sensor datafrom the sensor data generator 110.

Next, the lower area remover 140 removes a frequency area, in which theuser may be falsely recognized to board the electric train, based on thex-acc, the y-acc, and the z-acc (S6000). The lower area remover 140 mayfunction as a lowpass filter (LPF). In addition, the removed frequencyarea may be set by the information processing apparatus 100 in advance.Otherwise, the information processing apparatus 100 acquires thebehavior pattern independently of the user, and the frequency area maybe set according to the user behavior. Next, the sensor data calculationunit 136 calculates the horizontal direction acceleration sensor dataand the vertical direction acceleration sensor data based on the x-acc,the y-acc, and the z-acc, from which the frequency area is removed(S6002 and S6004). Herein, the horizontal direction is the directionparallel to the ground on which the electric train drives. In addition,the vertical direction is the direction perpendicular to the horizontaldirection.

Next, the sensor data storage unit 142 records a predetermined dataamount of the horizontal direction acceleration sensor data and apredetermined data amount of the vertical direction acceleration sensordata in the FIFO manner (S6006 and S6008). Herein, the predetermineddata may be set to, for example, data corresponding only to a time setby the information processing apparatus 100 or data corresponding to atime set by the user. The sensor data calculation unit 136 calculatesthe horizontal direction variance value (h-var) from the horizontaldirection acceleration sensor data which are recorded in the FIFO manner(S6010). In addition, the sensor data calculation unit 136 calculatesthe vertical direction variance value (v-var) from the verticaldirection acceleration sensor data which are recorded in the FIFO manner(S6012). The horizontal direction variance value (h-var) represents thedegree of shaking, that is, vibration in the horizontal direction whenthe electric train drives. In addition, the vertical direction variancevalue (v-var) represents the degree of shaking, that is, vibration inthe vertical direction when the electric train drives.

In addition, it is determined whether or not the vertical directionvariance value (v-var) is larger than the minimum allowable verticalvariance value V₁ that is the vertical direction variance value that isthe minimum allowable and smaller than the maximum allowable verticalvariance value V₂ that is the vertical direction variance value that isthe maximum allowable (S6014). In the case where vertical directionvariance value (v-var) is equal to or smaller than the V₁ or in the casewhere the vertical direction variance value is equal to or larger thanthe V₂, the sensor data calculation unit 136 sets the later-describedelectric train boarding determination data (det) to zero. In otherwords, in the case where the vertical direction variance value (v-var)is equal to or smaller than V₁ or in the case where the verticaldirection variance value is equal to larger than the V₂, since thevertical direction variance value is not suitable for representing thedegree of shaking, that is, the vibration when the electric traindrives, the sensor data calculation unit 136 corrects the electric trainboarding determination data (det) as zero. In addition, the V₁ and theV₂ are, for example, values set by the information processing apparatus100.

Next, the sensor data calculation unit 136 determines which one of thevertical direction variance value and the horizontal direction variancevalue is smaller (S6016). In the case where the vertical directionvariance value (v-var) is small, the sensor data calculation unit 136calculates an integration value of a predetermined amount of thevertical direction variance value (v-var) (S6018). The predeterminedamount may be, for example, only an amount set by the informationprocessing apparatus 100 or only an amount set by the user. In addition,in the case where the horizontal direction variance value (h-var) issmall, the sensor data calculation unit 136 calculates an integrationvalue of a predetermined amount of the horizontal direction variancevalue (h-var) (S6020). The predetermined amount may be, for example,only an amount set by the information processing apparatus 100 or onlyan amount set by the user. By using the integration, the sensor datacalculation unit 136 calculates electric train boarding determinationdata (det) for determining whether or not the user boards the electrictrain. In addition, as described above, in the case where the verticaldirection variance value (v-var) is equal to or smaller than the V₁, orin the case where the vertical direction variance value (v-var) is equalto or larger than the V₂, the sensor data calculation unit 136 sets thelater-described electric train boarding determination data (det) to zero(S6028).

Next, the electric train boarding determination unit 132 acquires theelectric train boarding determination data from the sensor dataprocessing unit 120. The electric train boarding determination unit 132determines whether or not the electric train boarding determination datais larger than the minimum electric train boarding recognition value D₈that is a lower limit value for recognizing that the user boards theelectric train (S6022). In the case where the electric train boardingdetermination data is larger than the D₈, the electric train boardingdetermination unit 132 determines that the user boards the electrictrain. In this case, the electric train boarding determination unit 132generates the behavior information indicating that the user boards theelectric train (S6024). On the other hand, in the case where theelectric train boarding determination data is equal to or smaller thanthe D₈, the electric train boarding determination unit 132 determinesthat the user does not board the electric train (S6026). In this case,the electric train boarding determination unit 132 generates thebehavior information indicating that the user does not board theelectric train (S6026). In this manner, in the information processingapparatus 100 according to the embodiment, by the sensor data processfunction specified to each user behavior, it may be recognized with agood accuracy whether the user boards the electric train.

In addition, similarly to the method of recognizing whether or not theuser boards an elevator, in the recognizing whether or not the userboards an electric train, the information processing apparatus 100considers the state from the accelerated state to the decelerated stateof the electric train. In other words, in the case where the user boardsthe electric train and the electric train stops at a station, asdescribed later, a flag “false” may be erected as a result of therecognition. In other words, in the case where the electric train stopsor in the case where the electric train arrives and the user gets offthe electric train to walk, the electric train boarding determinationunit 132 determines that the user does not board the electric train. Inthis case, as described later, the behavior information post-processingunit 116 performs a predetermined post-process. In other words, in thecase where a predetermined condition is satisfied, if the user boardsthe electric train or is boarding the electric train, a post-process maybe performed based on the state from the accelerated state to thedecelerated state of the electric train.

5-8. Method of Recognizing Whether or not the User Turns to the Right orto the Left

Next, a method of recognizing whether the user turns to the right or theleft will be described with reference to FIG. 17. FIG. 17 is a diagramillustrating a flow of the method of recognizing whether the user turnsto the right or the left in the behavior recognizing unit 112. First,the sensor data generator 110 senses the user behavior 156 and generatessensor data. Next, the behavior recognizing unit 112 acquires the sensordata from the sensor data generator 110. In this manner, in order torecognize whether the user turns to the right or the left, first, theturning-to-the-right/turning-to-the-left determination unit 134 in thebehavior determination unit 118 transmits to the sensor data processingunit 120 a signal for recognizing whether the user turns to the right orthe left. In addition, the sensor data processing unit 120 acquires thesensor data from the sensor data generator 110.

Next, the lower area remover 140 removes a frequency area, in which theuser may be falsely recognized as turning to the right or to the left,based on the x-acc, the y-acc, and the z-acc (S7000). The lower arearemover 140 may function as a lowpass filter (LPF). In addition, theremoved frequency area may be set by the user or set by the informationprocessing apparatus 100 in advance. Otherwise, the informationprocessing apparatus 100 acquires the behavior pattern independently ofthe user, and the frequency area may be set according to the userbehavior.

The sensor data calculation unit 136 calculates the angular velocity inthe gravity direction based on the x-acc, the y-acc, the z-acc, thex-gyro, the y-gyro, and the z-gryo, from which the frequency area isremoved (S7002). Next, the specific area remover 138 removes a value ina range excluding the curve recognition area, in which the user isrecognized as turning to the right or to the left, from the angularvelocity and calculates the corrected angular velocity (det) (S7004).The specific area remover 138 may function as a bandpass filter (BPF).In addition, the curve recognition area may be set by the user or set bythe information processing apparatus 100 in advance. Otherwise, theinformation processing apparatus 100 acquires the behavior patternindependently of the user, and the curve recognition area may be setaccording to the user behavior.

Next, the turning-to-the-right/turning-to-the-left determination unit134 acquires the corrected angular velocity from the sensor dataprocessing unit 120. The turning-to-the-right/turning-to-the-leftdetermination unit 134 determines whether or not the corrected angularvelocity is smaller than the maximum turning-to-the-right recognitionvalue D₉ that is an upper limit value for recognizing that the userturns to the right (S7006). In the case where the corrected angularvelocity is smaller than the D₉, theturning-to-the-right/turning-to-the-left determination unit 134generates the behavior information indicating that the user turns to theright (S7008). On the other hand, in the case where the correctedangular velocity is equal to or larger than the D₉ and larger than theminimum turning-to-the-left recognition value D₁₀ that is a lower limitvalue for recognizing that the user turns to the left, theturning-to-the-right/turning-to-the-left determination unit 134determines that the user turns to the left (S7010). In the case wherethe corrected angular velocity is larger than the D₁₀, theturning-to-the-right/turning-to-the-left determination unit 134generates the behavior information indicating that the user turns to theleft (S7012). In addition, in the case where the corrected angularvelocity is equal to or larger than the D₉ and equal to or smaller thanthe D₁₀, the turning-to-the-right/turning-to-the-left determination unit134 generates the behavior information indicating that the user neitherturns to the right nor turns to the left (S7014). Herein, in theembodiment, the D₉ has a negative value, and the D₁₀ has a positivevalue. In this manner, in the information processing apparatus 100according to the embodiment, by the sensor data process functionspecified to each user behavior, it may be recognized with a goodaccuracy whether the user turns to the right or to the left.

5-9. Behavior Information Post-Processing Method

Next, the behavior information post-process function will be describedwith reference to FIGS. 18 to 20. FIG. 18 is a diagram illustrating aconcept representing a state that, after the behavior information ismanaged by the behavior manager 114, the result of the behaviorrecognition is determined by the behavior information post-processingunit 116 and labeled. The arrow 230 indicates a scan direction of theFIFO. The behavior manager 114 manages the behavior information incorrespondence with the time point at which the behavior correspondingto the behavior information is exhibited. Next, the behavior informationpost-processing unit 116 may erect a flag “true” indicating that thebehavior is exhibited or a flag “false” indicating that the behavior isnot exhibited every predetermined sampling rate. The predeterminedsampling rate may be, for example, 32 Hz.

The behavior information post-processing unit 116 may perform are-process for changing the content of the flag into content differentfrom the original content. For example, the exclusive behaviorinformation re-processing unit 144 included in the behavior informationpost-processing unit 116 re-processes the behavior informationcorresponding to each behavior every unit time based on an exclusivecharacteristic in that the user is not allowed to exhibit two or morebehaviors simultaneously. Next, the exclusive behavior informationre-processing unit 144 may change the content of the flag into contentdifferent from the original content. The exclusive characteristics aredescribed more in detail. As shown in the following Table 1, forexample, the user is not allowed to perform walking, running, andjumping simultaneously. However, in the behavior information generatingprocess of the behavior recognizing unit 112 described above, it may bedetermined that walking, running, and jumping are simultaneouslyexhibited by the user. Herein, the exclusive behavior informationre-processing unit 144 re-processes the behavior informationcorresponding to the behaviors that have an exclusive relationship everyunit time. As shown in Table 1, the state “stopped” and the state“temporarily stopped”, of which the exclusive relationship is denoted byA, have an exclusive relationship. In other words, these behavior statesdo not simultaneously occur. In addition, the state “walking”, the state“running”, and the state “jumping”, of which the exclusive relationshipis denoted by B, have an exclusive relationship. In other words, thesebehavior states do not simultaneously occur. In addition, the state“sitting” and the state “standing”, of which the exclusive relationshipis denoted by C, have an exclusive relationship. In other words, thesebehavior states do not simultaneously occur. In addition, the state“rising in elevator”, the state “descending in elevator”, and the state“boarding an electric train”, of which the exclusive relationship isdenoted by D, have an exclusive relationship. In other words, thesebehavior states do not simultaneously occur. In addition, the state“turning-to-the-right” and the state “turning-to-the-left”, of which theexclusive relationship is denoted by E, have an exclusive relationship.In other words, these behavior states do not simultaneously occur. Inthis case, as to which one of the behavior states is selected, theexclusive behavior information re-processing unit 144 may perform astatistical process on which one of the behavior states may be easilyselected with respect to the relationship between the previous and nextbehaviors, for example, based on the user's previous behaviorinformation managed by the behavior manager 114. In addition, the otherselection method may be used. The non-selected behavior information isexcluded by the exclusive behavior information re-processing unit 144.The exclusive behavior information re-processing unit 144 may generatebehavior information indicating that there is no behavior. In any case,the exclusive behavior information re-processing unit 144 corrects theportion denoted by the flag “true” shown by reference numeral 232 to bedenoted by the flag “false”.

TABLE 1 Exclusive Relation Type of Behavior Type of Sensor A Stop OnlyAcceleration Sensor A Temporarily Stop Only Acceleration Sensor B WalkOnly Acceleration Sensor B Run Only Acceleration Sensor B Jump OnlyAcceleration Sensor C Sit Only Acceleration Sensor C Stand OnlyAcceleration Sensor D Rise in Elevator Only Acceleration Sensor DDescend in Elevator Only Acceleration Sensor D Board Electric Train OnlyAcceleration Sensor E Turn to the Right Acceleration Sensor And GyroSensor E Turn to the Left Acceleration Sensor And Gyro Sensor

In addition, FIG. 19 shows that time delay for the process occurs in thebehavior information obtained by the process of the behavior recognizingunit 112 with respect to the sensor data. For example, the behaviorprocessed at the time point t_(n) is actually the behavior performed atthe time point t_(n)′. The behavior information post-processing unit 116includes a behavior information real-time adjusting unit 148. Thebehavior information real-time adjusting unit 148 recognizes the timedelay of each behavior, so that the behavior information real-timeadjusting unit 148 may obtain the accurate recognition time point ofeach behavior by correcting the t_(n) with the t_(n)′.

In addition, the behavior information post-processing unit 116 alsoincludes a false recognition behavior information re-processing unit146. In the case where the time necessary to exhibit a behavior isextremely short, the false recognition behavior informationre-processing unit 146 treats the behavior information corresponding tothe behavior as noise to consider that the actual behavior is notexhibited. For example, even in the case where the behavior recognizingunit 112 generates the behavior information indicating that the user“runs”, if the time necessary to run is extremely short, the falserecognition behavior information re-processing unit 146 performs are-process of treating the behavior information as noise. In addition,the false recognition behavior information re-processing unit 146 treatsthe behavior information corresponding to the behavior that is notallowed to be exhibited originally as the behavior that is not exhibitedactually. For example, if the behavior recognizing unit 112 recognizesthe “walking” state from the “sitting” state of the user, it isdetermined again that the user is not “sitting” but “standing”. In thismanner, in the case where the behavior information corresponding to eachbehavior does not satisfy a behavior information necessary conditionnecessary to exhibit each behavior, the false recognition behaviorinformation re-processing unit 146 corrects the behavior informationcorresponding to the behavior.

Next, FIG. 20 conceptually illustrates a state where the behaviormanager 114 acquires the existence of the behavior at a time point(t_(point-of-interest)) before a designated time (t_(time-delay)) fromthe current time point (t_(current)) with respect to the result of therecognition of the two pieces of behavior information stored in the FIFOmanner. As shown in FIG. 20, for example, the existence position of thet_(n) is different between the behavior A and the behavior B in the timeaxis. More specifically, after the process described with reference toFIG. 18 and the process described with reference to FIG. 19 areperformed by the behavior information post-processing unit 116, eachpiece of behavior information in the state shown in FIG. 20 is recordedin the FIFO. In this manner, since each piece of behavior information isrecorded and since time adjustment is performed on each piece of pastbehavior information, for example, the behavior manager 114 can easilytransmit the past behavior information to the data controller 150.

6. Modified Examples of First Embodiment

Next, a modified example of the first embodiment of the invention willbe described with reference to FIGS. 21 to 23. In addition, the overviewof the information processing method in the information processingapparatus 101 is substantially the same as the overview of theinformation processing method in the information processing apparatus100 described with reference to FIGS. 4 to 8, and thus, the descriptionthereof will be omitted.

First, a functional configuration of the information processingapparatus 101 according to the modified example will be described withreference to FIG. 21. FIG. 21 is a diagram illustrating an example ofthe functional configuration of the information processing apparatus 101according to the modified example.

The information processing apparatus 101 includes a sensor datagenerator 110, a behavior recognizing unit 112, a behavior manager 114,a behavior information post-processing unit 117, a data controller 150,a storage unit 152, a display controller 154, and a display screen 160.The behavior determination unit 118 includes a stopped statedetermination unit 122, a walking/running state determination unit 124,a jumping state determination unit 126, a posture change determinationunit 128, an elevator boarding determination unit 130, an electric trainboarding determination unit 132, and aturning-to-the-right/turning-to-the-left determination unit 134. Thesensor data processing unit 120 includes a sensor data calculation unit136, a specific area remover 138, a lower area remover 140, and a sensordata storage unit 142. The behavior information post-processing unit 117includes an exclusive behavior information re-processing unit 144, afalse recognition behavior information re-processing unit 146, abehavior information real-time adjusting unit 148, and a behaviorcomparison re-processing unit 149.

The sensor data generator 110, the behavior recognizing unit 112, andthe behavior manager 114 in the information processing apparatus 101 aresubstantially the same as the sensor data generator 110, the behaviorrecognizing unit 112, and the behavior manager 114 in the informationprocessing apparatus 100 according to the first embodiment. In addition,the data controller 150, the storage unit 152, the display controller154, and the display screen 160 are also substantially the same as thedata controller 150, the storage unit 152, the display controller 154,and the display screen 160 in the information processing apparatus 100.In addition, the exclusive behavior information re-calculation unit 144,the false recognition behavior information re-calculation unit 146, andthe behavior information real-time adjusting unit 148 are alsosubstantially the same as the exclusive behavior informationre-calculation unit 144, the false recognition behavior informationre-calculation unit 146, and the behavior information real-timeadjusting unit 148 in the information processing apparatus 100.Therefore, in the embodiment, the behavior comparison re-processing unit149 of the behavior information post-processing unit 117 will be mainlydescribed, and description of the same configuration as the firstembodiment will be omitted.

The behavior information post-processing unit 117 performs apredetermined post-process on the behavior information input by thebehavior manager 114. In the modified example, the behavior comparisonre-processing unit 149 performs a portion of the post-process. Withrespect to the behaviors performed within a predetermined time, thebehavior comparison re-processing unit 149 compares summed times of thebehavior information corresponding to two or more predeterminedbehaviors that are determined to be similar to each other based onsimilar behavior information as to whether or not the behaviors aresimilar to each other. In addition, the behavior comparisonre-processing unit 149 selects the behavior information having thelongest summed time as the behavior information for the predeterminedtime. The similar behavior information is information indicating whetheror not the behaviors are similar to each other and is stored, forexample, in the sensor data storage unit 142 or other database.

The process of the behavior comparison re-processing unit 149 will bedescribed in more detail with reference to examples shown in FIGS. 22Ato 22C. FIGS. 22A to 22C are diagrams illustrating examples of theinformation processing method according to the modified example.

First, as shown in FIG. 22A, the case where the user is determined toboard a car for a first half of the predetermined time and to board abus for a second half of the predetermined time by the process of thebehavior recognizing unit is described as an example. In the example,the predetermined time is set to 50 seconds. In this case, first, thebehavior comparison re-processing unit 149 determines based on thesimilar behavior information whether or not the behavior of boarding thecar and the behavior of boarding the bus are similar to each other anddetermines that the associated two behaviors are similar to each other.In the example shown in FIG. 22A, the time of boarding the carcorresponds to three memories (15 seconds), and the time of boarding thebus corresponds to seven memories (35 seconds). In other words, sincethe time of boarding the bus is longer than the time of boarding thecar, the behavior comparison re-processing unit 149 performs a processsuch that the user boards only the bus within the predetermined time.

Next, as shown in FIG. 22B, the case where the user is determined toboard a car, a bus, a car, a bus, and a car for a predetermined time inthis order by the process of the behavior recognizing unit is describedas an example. In this case, first, the behavior comparisonre-processing unit 149 determines based on the similar behaviorinformation whether or not the behavior of boarding the car and thebehavior of boarding the bus are similar to each other and determinesthat the associated two behaviors are similar to each other. In theexample shown in FIG. 22B, the time of boarding the car corresponds tothree memories (15 seconds) since there are three sites each of whichcorresponds to one memory, and the time of boarding the bus correspondsto seven memories (35 seconds) since there is one site which correspondsto three memories and one site which corresponds to four memories. Inother words, since the summed time of boarding the bus is longer thanthe summed time of boarding the car, the behavior comparisonre-processing unit 149 performs a process such that the user boards onlythe bus within the predetermined time.

Next, as shown in FIG. 22C, the case where the user is determined toboard a car, an electric train, and a bus in this order by the processof the behavior recognizing unit is described as an example. In thismanner, even in the case where the boarding of the three vehicles isrecognized, first, the behavior comparison re-processing unit 149determines based on the similar behavior information whether or not thebehaviors of boarding the vehicles are similar to each other anddetermines that the associated three behaviors are similar to eachother. In the example shown in FIG. 22C, the time of boarding the carcorresponds to two memories (10 seconds); the time of boarding theelectric train corresponds to six memories (30 seconds); and the time ofboarding the bus corresponds to two memories (10 seconds). In otherwords, since the time of boarding the electric train is longest, thebehavior comparison re-processing unit 149 performs a process such thatthe user boards only the electric train within the predetermined time.

The examples shown in FIGS. 22A to 22C are the cases where the user isdetermined to board a car or the like. Although the result of thebehavior recognition by the vehicle boarding determination unit 532according to a second embodiment described later is exemplified, theprocess of the behavior comparison re-processing unit 149 is not limitedthereto. In other words, like behaviors of boarding a car, a bus, and anelectric train, two or more behaviors that are determined to be similarto each other based on similar behavior information may be used.

In this manner, although it is actually difficult to assume that theuser boards a plurality of vehicles such as a car, a bus, and anelectric train for a short time of about 50 seconds, the behaviorcomparison re-processing unit 149 performs the aforementionedpost-process, so that the result of the behavior recognition may reflectan actual user behavior with a better accuracy. In addition, thepredetermined time is set to 50 seconds in the above example, but it isnot limited thereto. In addition, the predetermined time may be set inadvance or set by the user. In general, a time for boarding a vehiclesuch as a car, a bus, and an electric train is at least several minutes.In other words, the predetermined time is shorter than the actual timefor boarding the vehicle. Therefore, since the time of performing thepost-process in the behavior comparison re-processing unit 149corresponds to a range of error in comparison with the actual time ofthe user's boarding of the vehicle, although the behavior comparisonre-processing unit 149 performs the post-process as described above, theaccuracy of the result of the behavior recognition may not deteriorate.

Next, a flow of the behavior recognition method and the behaviorinformation post-processing method will be described with reference toFIG. 23. FIG. 23 is a diagram illustrating a flow of the behaviorrecognition method and the behavior information post-processing methodaccording to the modified example. In the modified example, theprocessing method performed by the Steps S100, S102, S104, S106, andS108 is substantially the same as the behavior recognition methodaccording to the first embodiment of the invention described withreference to FIG. 9 and the processing method performed by the StepsS100, S102, S104, S106, and S108 in the flow of the behavior informationpost-processing method. Therefore, in the modified example, theprocessing method performed by the Step S111 will be mainly described,and thus, description of the same processing method as that of the firstembodiment will be omitted.

In Step S111, the behavior information post-processing unit 117 performsthe post-process on the result of the behavior recognition obtained bythe processes performed in Steps S100 to 5108. As the post-process,there is, for example, a process of ensuring the consistency of theexclusive behavior, which is performed by the exclusive behaviorinformation re-calculation unit 144 of the behavior informationpost-processing unit 116. In addition, there is a process of avoidingfalse recognition based on the empirical rule, which is performed by thefalse recognition behavior information re-calculation unit 146 of thebehavior information post-processing unit 116. In addition, there is aprocess of adjusting the time delay of a digital filter, which isperformed by the behavior information real-time adjusting unit 148 ofthe behavior information post-processing unit 116. There is a process ofimproving the reliability of the majority rule, which is performed bythe behavior comparison re-processing unit 149 of the behaviorinformation post-processing unit 116. The process of the majority ruledenotes the process of comparing the predetermined evaluated values onthe behavior information corresponding to two or more behaviors for thepredetermined time and determining that the behavior corresponding tothe behavior information having the large evaluated value is performedfor the predetermined time as described with reference to FIGS. 22A to22C. For example, the behavior comparison re-processing unit 149calculates the summed times of the behaviors within a predetermined timewith respect to the labeled result of the behavior recognition andtreats the behavior having the longest time as the valid behavior andthe other behaviors as invalid behaviors. Since the post-process of thebehavior information post-processing unit 117 is described withreference to FIGS. 18 to 22C, the detailed description thereof isomitted. Due to the post-process, the reliability of the result of thebehavior recognition calculated by the information processing apparatus101 may be further improved.

7. Functional Configuration of Information Processing Apparatus 500According to Second Embodiment of the Invention

Next, a functional configuration of the information processing apparatus500 according to a second embodiment of the invention will be describedwith reference to FIG. 24. FIG. 24 is a diagram illustrating an exampleof the functional configuration of the information processing apparatus500 according to the second embodiment of the invention. The informationprocessing apparatus 500 includes a characteristic vector calculationfunction for the sensor data depending on the user behavior, anidentification function calculation function, and a threshold valuedetermination function as one of the features.

The information processing apparatus 500 includes a sensor datagenerator 110, a behavior recognizing unit 512, a behavior manager 114,a behavior information post-processing unit 117, a data controller 150,a storage unit 152, a display controller 154, and a display screen 160.The behavior recognizing unit 512 includes a behavior determination unit518 and a sensor data processing unit 520. The sensor data processingunit 520 includes a sensor data calculation unit 536 and a sensor datastorage unit 142. The behavior information post-processing unit 117includes an exclusive behavior information re-processing unit 144, afalse recognition behavior information re-processing unit 146, abehavior information real-time adjusting unit 148, and a behaviorcomparison re-processing unit 149. The behavior determination unit 518includes a stopped state determination unit 122, a walking/running statedetermination unit 124, a jumping state determination unit 126, aposture change determination unit 128, an elevator boardingdetermination unit 130, a vehicle boarding determination unit 532, and aturning-to-the-right/turning-to-the-left determination unit 134. Thesensor data processing unit 120 includes a sensor data calculation unit536, a specific area remover 138, a lower area remover 140, and a sensordata storage unit 142.

The sensor data generator 110, the behavior manager 114, and the datacontroller 150 in the information processing apparatus 500 aresubstantially the same as the sensor data generator 110, the behaviormanager 114, and the data controller 150 in the information processingapparatus 100 according to the first embodiment. In addition, thebehavior information post-processing unit 117 is substantially the sameas the behavior information post-processing unit 117 in the informationprocessing apparatus 101 according to the modified example of the firstembodiment. In addition, the storage unit 152, the display controller154, and the display screen 160 are also substantially the same as thestorage unit 152, the display controller 154, and the display screen 160in the information processing apparatus 100 according to the firstembodiment. In addition, the stopped state determination unit 122 andthe walking/running state determination unit 124 are also substantiallythe same as the stopped state determination unit 122 and thewalking/running state determination unit 124 in the informationprocessing apparatus 100. In addition, the jumping state determinationunit 126 and the posture change determination unit 128 are alsosubstantially the same as the jumping state determination unit 126 andthe posture change determination unit 128 in the information processingapparatus 100. In addition, the elevator boarding determination unit 130and the turning-to-the-right/turning-to-the-left determination unit 134are also substantially the same as the elevator boarding determinationunit 130 and the turning-to-the-right/turning-to-the-left determinationunit 134 in the information processing apparatus 100 according to thefirst embodiment. Therefore, in the embodiment, the vehicle boardingdetermination unit 518 of the behavior recognizing unit 512 and thesensor data calculation unit 536 of the sensor data processing unit 520will be mainly described, and thus, description of the sameconfiguration as that of the first embodiment and the modified examplewill be omitted.

The behavior recognizing unit 512 acquires the sensor data from thesensor data generator 110. The behavior recognizing unit 512 recognizesthe behavior exhibited by the user by performing a predeterminedthreshold value process on the sensor data and generates the behaviorinformation that is the information indicating the behavior exhibited bythe user. The behavior recognizing unit 512 includes a sensor dataprocessing unit 520 having a sensor data calculation unit 536. Thesensor data calculation unit 536 calculates the characteristic vectorbased on the acceleration sensor data that is an example of the sensordata. Next, the sensor data calculation unit 536 substitutes thecharacteristic vector for the identification function set for each typeof the vehicle to calculate the value of the identification function.The behavior recognizing unit 512 further includes a vehicle boardingdetermination unit 518 that determines whether or not the user boards apredetermined vehicle and generates the behavior information based onthe determination result of the vehicle boarding determination unit 518.The vehicle boarding determination unit 518 determines whether or notthe value of the identification function calculated by the sensor datacalculation unit 536 is larger than the vehicle boarding recognitionvalue that is used to recognize whether the user boards the vehiclecorresponding to the identification function.

The characteristic vector includes, for example, physical propertiesnecessary to represent the boarding of the vehicle, such as an averagevalue, a variance value, and a frequency in the vertical or horizontaldirection generated from the sensor data. The identification function isset in advance according to each vehicle based on data of a numberhaving statistical meaning with a reference to a general mechanicallearning mechanism. The data is an actually-measured characteristicvector at the time of boarding a defined vehicle. In addition, theidentification function is stored in the sensor data storage unit 142 inadvance, but it may be updated by the user's input. The vehicle is notlimited thereto, but, for example, may be adapted to an electric train,a car, a bus, and a bicycle.

In this manner, in the information processing apparatus 500, since theidentification function according to the vehicle is set in the sensordata storage unit 142, the identification function may be simply andeasily designed in the design of the digital filter. Therefore, there isno problem that the apparatus has to have a large size, and types of thevehicles to be determined may be increased. For example, as listed inthe following Table 2, it may be easily determined based on theacceleration sensor whether or not the user boards a plurality ofvehicles marked by asterisk. In addition, since the vehicle boardingdetermination unit 532 determines based on the identification functionspecified to each vehicle whether or not the vehicle is boarded,although the change in the acceleration of the vehicle that the userboards is not large, it may be determined with a better accuracy whetheror not each vehicle is boarded. In addition, since the method ofcalculating the characteristic vector is common to the vehicles and onlythe settings of the identification functions are different among thevehicles, it may be determined by a much simpler method whether or notthe user boards the vehicles. In addition, since the identificationfunction that is set in advance may be learned and updated later by theuser, the identification function may be updated according to the changein motion of the vehicle involved in the change of the times. Inaddition, since the behavior information post-processing unit 116 of thebehavior comparison re-processing unit 149 or the like performs thepost-process, there is no problem in that the result of the behaviorrecognition of exchanging a plurality of the vehicles any number oftimes for a short time of about tens of seconds is generated, and theresult of the behavior recognition may be obtained with a betteraccuracy.

TABLE 2 Type of Behavior Type of Sensor Stop Only Acceleration SensorTemporarily Stop Only Acceleration Sensor Walk Only Acceleration SensorRun Only Acceleration Sensor Jump Only Acceleration Sensor Sit OnlyAcceleration Sensor Stand Only Acceleration Sensor Rise in Elevator OnlyAcceleration Sensor Descend in Elevator Only Acceleration Sensor * BoardElectric Train Only Acceleration Sensor * Board Bus Only AccelerationSensor * Board Car Only Acceleration Sensor * Board Bicycle OnlyAcceleration Sensor Turn to the Right Acceleration Sensor and GyroSensor Turn to the Left Acceleration Sensor and Gyro Sensor

8. Application Examples of Information Processing Method in InformationProcessing Apparatus 500

Next, application examples of the information processing method will bedescribed with reference to FIGS. 25 and 26. In addition, the overviewof the information processing method in the information processingapparatus 500 is substantially the same as the overview of theinformation processing method in the information processing apparatus100, and thus, the description thereof will be omitted.

8-1. Behavior Recognition Function and Behavior Information Post-ProcessFunction

FIG. 25 is a diagram illustrating a flow of an information processingmethod in the information processing apparatus 500. The processingmethods performed by the steps S102, S104, S106, and S108 of FIG. 25 aresubstantially the same as the processing methods performed by the stepsS102, S104, S106, and S108 described with reference to FIG. 9. Inaddition, the processing method performed by the step S111 issubstantially the same as the processing method performed by the stepS111 described with reference to FIG. 23. Therefore, herein, descriptionwill be made of the processing method performed by the step S200, andthe description of processes described with reference to FIGS. 9 and 23will be omitted. In addition, since the same function as the function ofacquiring the recognition result of the past time point t_(n-d)described with reference to FIG. 10 is also performed in thisembodiment, the description thereof will be omitted.

In Step S200, the behavior recognizing unit 512 calculates acharacteristic vector corresponding to the sensor data generated by thesensor data generator 110 as an input signal and outputs the value ofthe identification function by using the identification function setaccording to the type of vehicle. Hereinafter, the process performed bythe Step S200 will be described in detail with reference to FIG. 26.

8-2. Method of Recognizing Whether or not the User Boards Vehicle

Next, a method of recognizing whether or not a user boards a vehiclewill be described with reference to FIG. 26. FIG. 26 is a diagramillustrating a flow of a method of recognizing whether or not a userboards a vehicle by the behavior recognizing unit 512.

First, the sensor data generator 110 senses the user behavior 156 andgenerates sensor data. Next, the behavior recognizing unit 512 acquiresthe sensor data from the sensor data generator 110. In order torecognize whether or not a user boards a vehicle, first, the vehicleboarding determination unit 518 transmits to the sensor data processingunit 520 a signal for recognizing whether or not a vehicle is boarded.In addition, the sensor data processing unit 520 acquires the sensordata from the sensor data generator 110.

The sensor data calculation unit 536 calculates characteristic vectorsfor the x-acc, the y-acc, and the z-acc (S8000). The characteristicvector includes, for example, a plurality of characteristic amounts suchas an average value, a variance value, and a frequency in the horizontalor vertical direction, which are derived from the sensor data. Thecharacteristic vector may be calculated by the same method irrespectiveof the type of vehicle that the user boards.

Next, the sensor data calculation unit 536 substitutes thecharacteristic vector for the identification function acquired from thesensor data storage unit 142 to output a value of the identificationfunction (S8002). Herein, the predetermined identification function is anon-linear or linear function set according to the type of vehicle. Theidentification function may be stored in the sensor data storage unit142 in advance or updated according to the user input. In addition, thevehicle includes, for example, an electric train, a car, a bus, and abicycle.

Next, the vehicle boarding determination unit 518 determines that theuser boards the vehicle corresponding to the identification function anddetermines whether or not the output value of the identificationfunction is larger than the vehicle boarding recognition value D₁₁ forrecognizing that the user boards the vehicle (S8004). The vehicleboarding recognition value D₁₁ may be different according to the type ofvehicle.

Next, in the case where the value of the identification function islarger than the vehicle boarding recognition value D₁₁, the vehicleboarding determination unit 518 generates the behavior informationindicating that the user boards the predetermined vehicle (S8006). Forexample, in the case where the process is to determine whether or notthe user boards an electric train, the vehicle boarding determinationunit 518 generates the behavior information indicating that the userboards the electric train. In addition, for example, in the case wherethe process is to determine whether or not the user boards a bus, thevehicle boarding determination unit 518 generates the behaviorinformation indicating that the user boards the bus. In addition, forexample, in the case where the process is to determine whether or notthe user boards a car, the vehicle boarding determination unit 518generates the behavior information indicating that the user boards thecar. In addition, for example, in the case where the process is todetermine whether or not the user boards a bicycle, the vehicle boardingdetermination unit 518 generates the behavior information indicatingthat the user boards the bicycle.

The determination whether or not the user boards the vehicles may besimultaneously performed. Accordingly, the result of behaviorrecognition indicating that the user boards a car or a bus may beobtained in a short time, for example, in about 50 seconds. However, inthis case, for example, as described with reference to FIGS. 21 to 23,the behavior comparison re-processing unit 149 performs a re-processindicating that the user boards only the vehicle which is determined tobe boarded for a longer time, among the car and the bus, for the time.Whether or not the behavior comparison re-processing unit 149 is toperform the post-process may be set by the information processingapparatus 500 in advance or input by user manipulation.

On the other hand, in the case where the value of the identificationfunction is equal to or smaller than the vehicle boarding recognitionvalue D₁₁, the vehicle boarding determination unit 518 generates thebehavior information indicating that the user does not board thepredetermined vehicle (S8008). For example, in the case where theprocess is to determine whether or not the user boards an electrictrain, the vehicle boarding determination unit 518 generates thebehavior information indicating that the user does not boards theelectric train. In addition, for example, in the case where the processis to determine whether or not the user boards a bus, the vehicleboarding determination unit 518 generates the behavior informationindicating that the user does not board the bus. In addition, forexample, in the case where process is to determine whether or not theuser boards a car, the vehicle boarding determination unit 518 generatesthe behavior information indicating that the user does not board thecar. In addition, for example, in the case where process is to determinewhether or not the user boards a bicycle, the vehicle boardingdetermination unit 518 generates the behavior information indicatingthat the user does not board the bicycle.

9. Example of Hardware Configuration of Information ProcessingApparatuses 100 and 500

The functions of the components of the apparatus may be implemented, forexample, by a computer program for implementing the functions in theinformation processing apparatus having a hardware configuration shownin FIG. 21. FIG. 21 is a diagram illustrating the hardware configurationof the information processing apparatus capable of implementing thefunctions of the components of the apparatus. The information processingapparatus has an arbitrary form. For example, a portable informationterminal such as a personal computer, a mobile phone, a PHS (PersonalHandy-phone System), and a PDA (Personal Digital Assistant), a gamemachine, or various information electronic appliances are included inthe form.

As shown in FIG. 21, the information processing apparatus mainlyincludes a CPU (Central Processing Unit) 902 and a ROM (Read OnlyMemory) 904. In addition, the information processing apparatus alsoincludes a RAM (Random Access Memory) 906, a host bus 908, a bridge 910,an external bus 912, and an interface 914. In addition, the informationprocessing apparatus further includes an input unit 916, an output unit918, a storage unit 920, a drive 922, a connection port 924, and acommunication unit 926.

The CPU 902 functions as, for example, a calculation processingapparatus or a control apparatus to control the ROM 904, the RAM 906,the storage unit 920, or the entire operations of the components or aportion thereof based on various types of programs recorded in aremovable recording medium 928. The ROM 904 stores, for example,programs read by the CPU 902 or data used for calculation. The RAM 906temporarily or permanently stores, for example, programs read by the CPU902 or various parameters that are suitably changed at the time ofexecuting the programs. The components are connected to each other, forexample, via a host bus 908 capable of implementing high-rate datatransmission. In addition, the host bus 908 is connected to an externalbus 912, of which data transmission rate is relatively low, for example,through a bridge 910.

The input unit 916 is, for example, a manipulator such as a mouse, akeyboard, a touch panel, a button, a switch, and a lever. In addition,the input unit 916 may be a remote controller (so-called “remocon”)capable of transmitting a control signal by using an infrared ray orother electromagnetic waves. In addition, the input unit 916 isconfigured to have an input control circuit for transmitting informationinput by using the manipulator as an input signal to the CPU 902.

The output unit 918 is, for example, a display apparatus such as a CRT(Cathode Ray Tube) and an LCD (Liquid Crystal Display). In addition, theoutput unit 918 may be a display apparatus such as a PDP (Plasma DisplayPanel) and an ELD (Electro-Luminescence Display). In addition, theoutput unit 918 may be an apparatus capable of visually or auditorilynotifying the acquired information to the user such as an audio outputapparatus including a speaker and a headphone, a printer, a mobilephone, and a facsimile.

The storage unit 920 is constructed with an apparatus for storingvarious types of data, for example, a magnetic storage device such as ahard disk drive (HDD), a semiconductor storage device, an opticalstorage device, or an opto-magnetic storage device.

The drive 922 is an apparatus for reading information recorded in, forexample, a removable recording medium 928 such as a magnetic disk, anoptical disk, an opto-magnetic disk, or a semiconductor memory orwriting information in the removable recording medium 928. The removablerecording medium 928 is, for example, a DVD media, a Blu-ray media, anHD DVD media, a memory stick, or an SD memory card (Secure Digitalmemory card). The removable recording medium 928 may be, for example, anIC card (Integrated Circuit Card) embedded with a non-contact IC chip oran electronic apparatus.

The connection port 924 is, for example, a port for connecting anexternal connection apparatus 930 such as a USB (Universal Serial Bus)port and an IEEE1394 port. In addition, the connection port 924 is, forexample, a port for connecting the external connection apparatus 930such as a SCSI (Small Computer System Interface), an RS-232C port, or anoptical audio port. The external connection apparatus 930 is, forexample, a printer, a portable music player, a digital camera, a digitalvideo camera, or an IC recorder.

The communication unit 926 is a communication device for connecting tothe network 932 and is, for example, a wired or wireless LAN (Local AreaNetwork or a WUSB (Wireless USB) communication card. In addition, thecommunication unit 926 is an optical communication router, an ADSL(Asymmetric Digital Subscriber Line) router, or various communicationmodems. In addition, the network 932 connected to the communication unit926 is configured to a network connected in a wired or wireless mannerand is, for example, the Internet, an indoor LAN, an infraredcommunication, a visible communication, a broadcast, or a satellitebroadcast.

10. Statistics

Finally, the functional configurations of the information processingapparatuses according to the embodiments and the effects obtained fromthe functional configurations will be described in brief.

First, the functional configurations of the information processingapparatus according to the embodiment may be expressed as follows. Theinformation processing apparatus includes a sensor data generator, abehavior recognizing unit, a behavior manager, and a behaviorinformation post-processing unit. The sensor data generator senses theuser behavior to generate the sensor data corresponding to the userbehavior. The behavior recognizing unit recognizes the behaviorexhibited by the user by performing a predetermined threshold valueprocess on the sensor data and generates the behavior information thatis the information indicating the behavior exhibited by the user. Thebehavior manager manages the behavior information generated by thebehavior recognizing unit in correspondence with the time point at whichthe behavior corresponding to the behavior information is exhibited. Thebehavior information post-processing unit performs a predeterminedpost-process on the behavior information managed by the behaviormanager. The behavior recognizing unit further includes a plurality ofbehavior determination units specified to specific behaviors exhibitedby the user and generates the behavior information based on thedetermination results of the plurality of behavior determination units.In this manner, since the plurality of behavior determination unitsspecified to specific behaviors exhibited by the user are included andthe behavior determination units generate the behavior information, thebehaviors may be recognized with good accuracy, so that falserecognition may be reduced.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. The behaviorrecognizing unit includes a stopped state determination unit, awalking/running state determination unit, a jumping state determinationunit, a posture change determination unit, an elevator boardingdetermination unit, an electric train boarding determination unit, and aturning-to-the-right/turning-to-the-left determination unit. The stoppedstate determination unit determines whether or not the user is in thestopped state. The walking/running state determination unit determineswhether the user is in the walking state or in the running state. Thejumping state determination unit determines whether or not the user isin the jumping state or in the non-jumping state. The posture changedetermination unit determines whether or not the user is in the sittingstate or in the standing state. The elevator boarding determination unitdetermines whether or not the user is in the boarding-elevator state.The electric train boarding determination unit determines whether or notthe user is in the boarding-electric train state. Theturning-to-the-right/turning-to-the-left determination unit determineswhether or not the user turns to the right or the left. In this manner,since the plurality of behavior determination units specified tospecific behaviors exhibited by the user are included and the behaviordetermination units generate the behavior information, the behaviors maybe recognized with a good accuracy, so that false recognition may bereduced.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. In theinformation processing apparatus, the behavior recognizing unit includesas the behavior determination unit a vehicle boarding determination unitthat determines whether or not the user boards the vehicle by using thesensor data and a predetermined identification function set in advance.In this manner, in design of a digital filter, since an identificationfunction that can be easily designed is set, there is no problem thatthe apparatus has to have a large size, and the types of vehicles to bedetermined may be increased. In addition, since the vehicle boardingdetermination unit determines based on the identification functionspecified to each vehicle whether or not the vehicle is boarded,although the change in the acceleration of the vehicle that the userboards is not large, the vehicle boarding determination unit maydetermine with a better accuracy whether or not each vehicle is boarded.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. The sensor datastorage unit records the sensor data in the FIFO manner. The sensor datacalculation unit performs a predetermined calculation by using thesensor data. The specific area remover removes a value excluding aspecific area from the input data. The lower area remover removes arange smaller than a predetermined threshold value from the input data.Each of the behavior determination units determines the behaviorexhibited by the user based on the calculation result output from thesensor data processing unit. In this manner, the plurality of behaviordetermination units specified to specific behaviors exhibited by theuser are included, and the behavior determination units allow the sensordata processing unit to perform predetermined calculations correspondingto the behaviors. Therefore, the behaviors may be recognized with a goodaccuracy, so that false recognition may be reduced.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. The behaviorinformation post-processing unit further includes an exclusive behaviorinformation re-processing unit that detects whether or not an exclusivecharacteristic representing that the user exhibits exclusive behaviorsthat are difficult to simultaneously perform exists in the behaviorinformation. In the case where two or more behaviors have the exclusivecharacteristic, the exclusive behavior information re-processing unitexcludes the behavior information corresponding to at least one behavioramong the two or more behaviors. In this manner, since the behaviorinformation having the exclusive characteristic is excluded from thebehavior information that is subject to the process performed by thebehavior recognizing unit, the behavior information of the user isgenerated with a good accuracy, so that false recognition is reduced.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. The behaviorinformation post-processing unit includes a false recognition behaviorinformation re-processing unit that re-processes the behaviorinformation every unit time based on a behavior information necessarycondition necessary for the user to exhibit each behavior. In the casewhere the behavior information does not satisfy the behavior informationnecessary condition, the false recognition behavior informationre-processing unit corrects the behavior information corresponding tothe behavior. In this manner, since the behavior information having nobehavior information necessary condition is excluded from the behaviorinformation that is subject to the process performed by the behaviorrecognizing unit, the behavior information of the user is generated witha good accuracy, so that false recognition is reduced.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. The behaviorinformation post-processing unit includes a behavior informationreal-time adjusting unit that determines that the user exhibits eachbehavior at the time point that is earlier than the time point at whichthe behavior recognizing unit transmits the behavior information to thebehavior manager by the time necessary for the behavior recognizing unitto generate the behavior information corresponding to each behavior. Inthis manner, with respect to the behavior information after the processperformed by the behavior recognizing unit, since a time necessary forthe behavior recognition process is corrected, the time point at whichthe user behavior is exhibited may be recognized with good accuracy.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. In theinformation processing apparatus, the behavior informationpost-processing unit includes a behavior comparison re-processing unit.In the case where two or more behaviors performed within a predeterminedtime are similar to each other, the behavior comparison re-processingunit includes a behavior comparison re-processing unit that comparessummed times of the behavior information corresponding to the two ormore behaviors. In addition, the behavior comparison re-processing unitselects the behavior information having the longest summed time as thebehavior information for the predetermined time. In the case where thepredetermined time is, for example, a shot time of about tens ofseconds, in practice it is difficult to consider that the user boards aplurality of the vehicles. However, in this manner, the behaviorcomparison re-processing unit performs the post-process, so that theresult of the behavior recognition may reflect the actual user behaviorwith a better accuracy.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. The sensor datainclude first to third acceleration sensor data that are data associatedwith accelerations according to the predetermined coordinate axes.First, the sensor data calculation unit calculates variance values ofthe first acceleration sensor data, the second acceleration sensor data,and the third acceleration sensor data in the first predetermined timerange, which are recorded in the sensor data storage unit. Next, thebehavior determination unit determines whether or not the maximumvariance value that is the largest variance value is smaller than thestop recognition value for recognizing that the user stops. In addition,the behavior determination unit determines whether or not the time, inwhich the maximum variance value is smaller than the stop recognitionvalue, continues to be longer than the stop recognition time forrecognizing that the user stops. In this case, the behaviordetermination unit generates the behavior information indicating thatthe user stops. In addition, the behavior determination unit determineswhether or not the maximum variance value is smaller than the stoprecognition value. In addition, the behavior determination unitdetermines whether or not the time, in which the maximum variance valueis smaller than the stop recognition value, continues to be longer thanthe stop recognition time. In this case, the behavior determination unitgenerates the behavior information indicating that the user temporarilystops. In this manner, since the stopped state determination unit allowsthe sensor data processing unit to perform a unique process specified tothe behavior, it may be recognized with a good accuracy whether the userstops or temporarily stops.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. The sensor datacalculation unit calculates variance values of the first accelerationsensor data, the second acceleration sensor data, and the thirdacceleration sensor data in the second predetermined time range, whichare recorded in the sensor data storage unit. Next, the sensor datacalculation unit calculates the maximum variance value among thevariance values. Next, the specific area remover removes a frequency ina range excluding the walking/running recognition frequency area, inwhich the user is recognized as walking or running. Next, theautocorrelation function of the acceleration sensor data recorded in thesensor data storage unit is calculated, so that the maximum value of theautocorrelation function is calculated. As a result, the sensor datacalculation unit also calculates the walking/running frequency data atthe time when the user walks or runs.

Next, the sensor data calculation unit multiplies the walking/runningfrequency data with the maximum variance value. Next, the lower arearemover removes a frequency area, in which the user may be falselyrecognized as walking or running, from the walking/running frequencydata that are subject to the predetermined calculation and the maximumvariance value. In this manner, the noise of the behavior informationgenerated later is reduced by the process of the lower area remover, sothat the behavior may be recognized with a better accuracy. Next, as aresult, the walking/running determination data for determining that theuser walks or runs are calculated. Next, the walking/running statedetermination unit determines whether or not the value of thewalking/running determination data is larger than the minimum walkingrecognition value that is a lower limit value for recognizing that theuser walks. In addition, the walking/running state determination unitdetermines whether or not the value of the walking/running determinationdata is smaller than the maximum walking recognition value that is anupper limit value for recognizing that the user walks. In this case, thewalking/running state determination unit generates the behaviorinformation indicating that the user walks. In addition, in the casewhere the value of the walking/running determination data is larger thanthe maximum walking recognition value, the walking/running statedetermination unit generates the behavior information indicating thatthe user runs. In this manner, since the walking/running statedetermination unit allows the sensor data processing unit to perform aunique process specified to the behavior, it may be recognized with agood accuracy whether the user walks or runs. In addition, the sensordata calculation unit integrates the walking/running frequency data, andthe walking/running state determination unit may generate the behaviorinformation regarding the number of steps of the user from the result ofthe integration.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. First, thesensor data calculation unit calculates the jumping accelerationrepresented by the magnitudes of the first acceleration sensor data, thesecond acceleration sensor data, and the third acceleration sensor datato recognize the user's jumping. Next, the specific area remover removesa range excluding a jumping recognition area, in which the user isrecognized to jump, from the jumping acceleration and calculates thecorrected jumping acceleration. In this manner, the noise of thebehavior information generated later is reduced by the process of thespecific area remover, so that the behavior may be recognized with abetter accuracy. Next, the lower area remover removes an area, in whichthe user may be falsely recognized as jumping, from the correctedjumping acceleration and calculates the jumping state determinationvalue for determining whether or not to jump. In this manner, the noiseof the behavior information generated later is reduced by the process ofthe lower area remover, so that the behavior may be recognized with abetter accuracy. Next, the jumping state determination unit determineswhether or not the jumping state determination value is larger than theminimum jumping recognition value that is a lower limit value forrecognizing that the user jumps. In this case, the jumping statedetermination unit generates the behavior information indicating thatthe user jumps. In this manner, since the jumping state determinationunit allows the sensor data processing unit to perform a unique processspecified to the behavior, it may be recognized with a good accuracywhether the user jumps.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. First, thelower area remover removes an area, in which the user may be falselyrecognized to change posture, from the first acceleration sensor data,the second acceleration sensor data, and the third acceleration sensordata. In this manner, the noise of the behavior information generatedlater is reduced by the process of the lower area remover, so that thebehavior may be recognized with a better accuracy. Next, as a result,the first gravity data based on the first acceleration sensor data, thesecond gravity data based on the second acceleration sensor data, andthe third gravity data based on the third acceleration sensor datacapable of determining whether or not there is a change in posture arecalculated. The sensor data calculation unit calculates the posturechange determination value for allowing the change in the user's postureto be recognized based on the result.

Next, the lower area remover removes an area, in which the user may befalsely recognized as changing posture, from the posture changedetermination value and calculates the corrected posture changedetermination value for determining whether or not the posture ischanged. In this manner, the noise of the behavior information generatedlater is reduced by the process of the lower area remover, so that thebehavior may be recognized with a better accuracy. Next, the posturechange determination unit determines whether or not the correctedposture change determination value is larger than the minimum posturechange recognition value that is a lower limit value for recognizingthat the user changes the posture. In addition, in the case where theuser is already standing, the posture change determination unitgenerates the behavior information indicating that the user sits. On theother hand, the posture change determination unit also determineswhether or not the corrected posture change determination value islarger than the minimum posture change recognition value. In addition,in the case where the user is already sitting, the posture changedetermination unit generates the behavior information indicating thatthe user stands. In this manner, since the posture change determinationunit allows the sensor data processing unit to perform a unique processspecified to the behavior, it may be recognized with a good accuracywhether the user sits or stands.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. First, thelower area remover removes an area, in which the acceleration in thegravity direction of the first acceleration sensor data, the secondacceleration sensor data, and the third acceleration sensor data may befalsely recognized. In this manner, the noise of the behaviorinformation generated later is reduced by the process of the lower arearemover, so that the behavior may be recognized with a better accuracy.The sensor data calculation unit calculates the gravity directionacceleration sensor data based on the first acceleration sensor data,the second acceleration sensor data, and the third acceleration sensordata, from which the area is removed. The sensor data calculation unitcalculates the gravity adjusting data represented by the magnitudes ofthe first acceleration sensor data, the second acceleration sensor data,and the third acceleration sensor data of allowing the value of thegravity to be adjusted. Next, the sensor data calculation unit recordsthe gravity adjusting data in the sensor data storage unit. Next, thesensor data calculation unit calculates the gravity adjusting variancevalue that is the variance value of the gravity adjusting data and thegravity adjusting average data that are the average value of the gravityadjusting data that are recorded in the sensor data storage unit. Thesensor data calculation unit determines whether or not the gravityadjusting variance value is smaller than the maximum allowable gravityadjusting variance value that is the maximum variance value for allowingthe gravity adjusting. In addition, the sensor data calculation unitdetermines whether or not the gravity adjusting average data is largerthan the minimum allowable gravity average value that is the minimumaverage value for allowing the gravity adjusting and whether or not thegravity adjusting average data is smaller than the maximum allowablegravity average value that is the maximum average value for allowing thegravity adjusting. In this case, the sensor data calculation unitconsiders the value according to the gravity adjusting average data tobe the gravity after the adjusting. In this manner, since the gravity isadjusted, the problem of the change in the gravity that occurs in thecase where the user carries the information processing apparatus in aslanted state thereof may not easily occur, so that erroneous behaviorinformation may not be easily generated.

Next, the lower area remover removes an area, in which the gravity maybe falsely recognized, from the gravity adjusting average data andcalculates the corrected gravity adjusting average data. In this manner,the noise of the behavior information generated later is reduced by theprocess of the lower area remover, so that the behavior may berecognized with a better accuracy. Next, the sensor data calculationunit calculates a difference between the gravity direction accelerationsensor data and the corrected gravity adjusting average data. Next, thelower area remover removes an area, in which the user may be falselyrecognized as boarding the elevator, from the difference. In thismanner, the noise of the behavior information generated later is reducedby the process of the lower area remover, so that the behavior may berecognized with a better accuracy. Next, as a result, the lower arearemover calculates the elevator rising determination data fordetermining whether or not the user boards the elevator. The elevatorboarding determination unit determines whether or not the elevatorrising determination data is larger than the predetermined value D_(α)at first and smaller than the predetermined value D_(β) after that. Inthis case, the elevator boarding determination unit generates thebehavior information indicating that the user is rising in the elevator.In the case where the elevator rising determination data is smaller thanthe predetermined value D_(β) at first and, after that, larger thepredetermined value D_(α), the elevator boarding determination unitgenerates the behavior information indicating that the user isdescending in the elevator. In addition, the D_(α) is the minimumelevator rising recognition value that is a lower limit value forrecognizing that the user starts to rise in the elevator. The D_(β) isthe maximum elevator descending recognition value that is an upper limitvalue for recognizing that the user starts to descend in the elevator.In this manner, since the elevator boarding determination unit allowsthe sensor data processing unit to perform a unique process specified tothe behavior, it may be recognized with a good accuracy whether or notthe user boards the elevator.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. First, thelower area remover removes a frequency area, in which the user may befalsely recognized as boarding the electric train, from the firstacceleration sensor data, the second acceleration sensor data, and thethird acceleration sensor data. In this manner, the noise of thebehavior information generated later is reduced by the process of thelower area remover, so that the behavior may be recognized with a betteraccuracy. Next, the sensor data calculation unit calculates horizontaldirection acceleration sensor data and vertical direction accelerationsensor data based on the first acceleration sensor data, the secondacceleration sensor data, and the third acceleration sensor data, fromthe frequency area is removed. Next, the sensor data calculation unitrecords the horizontal direction acceleration sensor data and thevertical direction acceleration sensor data in the sensor data storageunit. Next, the sensor data calculation unit calculates the horizontaldirection variance value based on the horizontal direction accelerationsensor data recorded in the sensor data storage unit.

Next, the sensor data calculation unit calculates the vertical directionvariance value based on the vertical direction acceleration sensor datarecorded in the sensor data storage unit. The sensor data calculationunit integrates the small variance value among the horizontal directionvariance value and the corrected vertical direction variance value. As aresult, the sensor data calculation unit calculates the electric trainboarding determination data for determining whether or not to board theelectric train. Next, the electric train boarding determination unitdetermines whether or not the electric train boarding determination datais larger than the minimum electric train boarding recognition valuethat is a lower limit value for recognizing that the user boards theelectric train. In this case, the electric train boarding determinationunit generates the behavior information indicating that the user boardsthe electric train. In addition, the sensor data calculation unitdetermines whether or not the vertical direction variance value is equalto or smaller than the minimum allowable vertical variance value that isthe minimum allowable vertical direction variance value. In addition,the sensor data calculation unit determines whether or not the verticaldirection variance value is equal to or larger than the maximumallowable vertical variance value that is the maximum allowable verticaldirection variance value. In this case, the sensor data calculation unitcalculates the electric train boarding determination data as zero. Inthis manner, since the electric train boarding determination unit allowsthe sensor data processing unit to perform a unique process specified tothe behavior, it may be recognized with a good accuracy whether or notthe user boards the electric train.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. First, thelower area remover removes an area, in which the user may be falselyrecognized as turning to the right or to the left, from the firstacceleration sensor data, the second acceleration sensor data, and thethird acceleration sensor data. In this manner, the noise of thebehavior information generated later is reduced by the process of thelower area remover, so that the behavior may be recognized with a betteraccuracy. Next, the sensor data calculation unit calculates an angularvelocity in the gravity direction based on the first to thirdacceleration sensor data, from which the above-described areas areremoved, and the first to third gyro sensor data. Next, the specificarea remover removes an area in a range excluding the curve recognitionarea, in which the user may be recognized as turning to the right or tothe left, from the angular velocity and calculates the corrected angularvelocity. In this manner, the noise of the behavior informationgenerated later is reduced by the process of the specific area remover,so that the behavior may be recognized with a better accuracy. Theturning-to-the-right/turning-to-the-left determination unit determineswhether or not the corrected angular velocity is smaller than themaximum turning-to-the-right recognition value that is an upper limitvalue for recognizing that the user turns to the right. In this case,the turning-to-the-right/turning-to-the-left determination unitgenerates the behavior information indicating that the user turns to theright. In addition, in the case where the corrected angular velocity islarger than the minimum turning-to-the-left recognition value that is alower limit value for recognizing that the user turns to the left, theturning-to-the-right/turning-to-the-left determination unit generatesthe behavior information indicating that the user turns to the left. Inthis manner, since the electric train boarding determination unit allowsthe sensor data processing unit to perform a unique process specified tothe behavior, it may be recognized with a good accuracy whether the userturns to the right or to the left.

In addition, the functions of the information processing apparatusaccording to the embodiment may be expressed as follows. First, thesensor data calculation unit calculates a value of the identificationfunction by using the characteristic vectors, which are generated basedon the first to third acceleration sensor data, and the identificationfunction set for each types of vehicles. Next, in the case where thecalculated value of the identification function is larger than thevehicle boarding recognition value that is used to recognize that theuser boards the vehicle corresponding to the identification function,the vehicle boarding determination unit generates the behaviorinformation indicating that the user boards the vehicle corresponding tothe identification function. In this manner, in the informationprocessing apparatus, since the simply and easily designedidentification functions are set according to the vehicles, there is noproblem that the apparatus has to have a large size, and the types ofthe vehicles to be determined may be increased. In addition, since thevehicle boarding determination unit determines based on theidentification function specified to each vehicle whether or not eachvehicle is boarded, although the change in the acceleration of thevehicle that the user boards is not large, it may be determined with abetter accuracy whether or not each vehicle is boarded. In addition,since the behavior information post-processing unit of the behaviorcomparison re-processing unit or the like performs the post-process,there is no problem that the result of the behavior recognition ofexchanging a plurality of the vehicles any number of times for a shorttime of about tens of seconds is generated, and the result of thebehavior recognition may be obtained with a better accuracy.

The present application contains subject matter related to thatdisclosed in Japanese Priority Patent Application JP 2009-017187 filedin the Japan Patent Office on Jan. 28, 2009 and Japanese Priority PatentApplication JP 2009-230580 filed on Oct. 2, 2009, the entire content ofwhich is hereby incorporated by reference.

It should be understood by those skilled in the art that variousmodifications, combinations, sub-combinations and alterations may occurdepending on design requirements and other factors insofar as they arewithin the scope of the appended claims or the equivalents thereof.

1. An information processing apparatus comprising: a sensor datagenerator that senses a user behavior and generates sensor datacorresponding to the user behavior; a behavior recognizing unit thatrecognizes the behavior exhibited by the user by performing apredetermined threshold value process on the sensor data and generatesbehavior information that is information indicating the behaviorexhibited by the user; a behavior manager that manages the behaviorinformation generated by the behavior recognizing unit in correspondencewith the time point at which the behavior corresponding to the behaviorinformation is exhibited; and a behavior information post-processingunit that performs a predetermined post-process on the behaviorinformation managed by the behavior manager, wherein the behaviorrecognizing unit further includes a plurality of behavior determinationunits specified to specific behaviors exhibited by the user andgenerates the behavior information based on the determination results ofthe plurality of behavior determination units.
 2. The informationprocessing apparatus according to claim 1, wherein the behaviorrecognizing unit at least includes: a stopped state determination unitthat determines whether or not the user is in the stopped state; awalking/running state determination unit that determines whether or notthe user is in the walking state or in the running state a jumping statedetermination unit that determines whether or not the user is in thejumping state a posture change determination unit that determineswhether or not the user is in the sitting state or in the standingstate; an elevator boarding determination unit that determines whetheror not the user is in the boarding-elevator state; an electric trainboarding determination unit that determines whether or not the user isin the boarding-electric train state; and aturning-to-the-right/turning-to-the-left determination unit thatdetermines whether or not the user turns to the right or to the left. 3.The information processing apparatus according to claim 1, wherein thebehavior recognizing unit includes, as the behavior determination unit,a vehicle boarding determination unit that that determines by using thesensor data and a predetermined identification function set in advancewhether or not the user boards a vehicle.
 4. The information processingapparatus according to claim 2 or 3, wherein the behavior recognizingunit further includes a sensor data processing unit having: a sensordata storage unit that stores the sensor data in an FIFO manner; and asensor data calculation unit that performs a predetermined calculationby using the sensor data, and wherein each of the behavior determinationunits determines the behavior exhibited by the user based on thecalculation result output from the sensor data processing unit.
 5. Theinformation processing apparatus according to claim 1, wherein thebehavior information post-processing unit further includes an exclusivebehavior information re-processing unit that detects whether or not anexclusive characteristic representing that the user exhibits exclusivebehaviors that are difficult to simultaneously perform exists in thebehavior information, and wherein, in the case where two or morebehaviors have the exclusive characteristic, the exclusive behaviorinformation re-processing unit excludes the behavior informationcorresponding to at least one behavior among the two or more behaviors.6. The information processing apparatus according to claim 1, whereinthe behavior information post-processing unit includes a falserecognition behavior information re-processing unit that reprocesses thebehavior information for each unit time based on a behavior informationnecessary condition necessary for the user to exhibit each behavior, andwherein, in the case where the behavior information does not satisfy thebehavior information necessary condition, the false recognition behaviorinformation re-processing unit corrects the behavior informationcorresponding to the behavior.
 7. The information processing apparatusaccording to claim 1, wherein the behavior information post-processingunit includes a behavior information real-time adjusting unit thatdetermines that the user exhibits each behavior at the time point thatis earlier than the time point at which the behavior recognizing unittransmits the behavior information to the behavior manager by timenecessary for the behavior recognizing unit to generate the behaviorinformation corresponding to each behavior.
 8. The informationprocessing apparatus according to claim 1, wherein, in a case where twoor more behaviors performed within a predetermined time are similar toeach other, the behavior information post-processing unit includes abehavior comparison re-processing unit that compares summed times of thebehavior information corresponding to the two or more behaviors andselects the behavior information having the longest summed time as thebehavior information for the predetermined time.
 9. The informationprocessing apparatus according to claim 4, wherein the sensor dataincludes first to third acceleration sensor data that are data regardingaccelerations in predetermined coordinate axes, wherein the sensor datacalculation unit calculates variance values of the first to thirdacceleration sensor data in a first predetermined time stored in thesensor data storage unit, and wherein, in the case where the maximumvariance value that is the largest variance value is smaller than a stoprecognition value of recognizing that the user stops and a time when themaximum variance value is smaller than the stop recognition valuecontinues to be longer than a stop recognition time when the user isrecognized as stopping, the stopped state determination unit generatesthe behavior information indicating that the user stops, and in the casewhere the maximum variance value is smaller than the stop recognitionvalue and the time when the maximum variance value is smaller than thestop recognition value does not continue to be longer than the stoprecognition time, the stopped state determination unit generates thebehavior information indicating that the user temporarily stops.
 10. Theinformation processing apparatus according to claim 4, wherein thesensor data includes first to third acceleration sensor data that aredata regarding accelerations in predetermined coordinate axes, whereinthe sensor data calculation unit calculates variance values of the firstto third acceleration sensor data in a second predetermined time storedin the sensor data storage unit and the maximum variance value that isthe largest variance value, calculates an autocorrelation function ofthe acceleration sensor data stored in the sensor data storage unit anda maximum value of the autocorrelation function to calculatewalking/running frequency data at the time when the user walks or runs,and calculates walking/running determination data for determiningwhether or not to walk or run by multiplying the walking/runningfrequency data with the maximum variance value, and wherein, in the casewhere a value of the walking/running determination data is larger than aminimum walking recognition value that is a lower limit value forrecognizing that the user walks and smaller than a maximum walkingrecognition value that is an upper limit value for recognizing that theuser walks, the walking/running state determination unit generates thebehavior information indicating that the user walks, and in the casewhere the value of the walking/running determination data is larger thanthe maximum walking recognition value, the walking/running statedetermination unit generates the behavior information indicating thatthe user runs.
 11. The information processing apparatus according toclaim 4, wherein the sensor data includes first to third accelerationsensor data that are data regarding accelerations in predeterminedcoordinate axes, wherein the sensor data calculation unit calculates ajumping state determination value by calculating magnitudes of jumpingaccelerations represented by magnitudes of the first to thirdacceleration sensor data, and wherein, in the case where the jumpingstate determination value is larger than a minimum jumping recognitionvalue that is a lower limit value for recognizing that the user jumps,the jumping state determination unit generates the behavior informationindicating that the user jumps.
 12. The information processing apparatusaccording to claim 4, wherein the sensor data includes first to thirdacceleration sensor data that are data regarding accelerations inpredetermined coordinate axes, wherein the sensor data calculation unitcalculates first to third gravity data in the predetermined coordinateaxes based on the first to third acceleration sensor data, calculates afirst gravity change data representing how much the first gravity datais changed from the first gravity data that are previously stored in thestorage unit, a second gravity change data representing how much thesecond gravity data is changed from the second gravity data that arepreviously stored in the storage unit, and a third gravity change datarepresenting how much the third gravity data is changed from the thirdgravity data that are previously stored in the storage unit, andcalculates a posture change determination value of determining whetheror not the user changes posture, which is represented by magnitudes ofthe first gravity change data, the second gravity change data, and thethird gravity change data, and wherein, in the case where the posturechange determination value is larger than a minimum posture changerecognition value that is a lower limit value for recognizing that theuser changes posture and in the case where the user is already standing,the posture change determination unit generates the behavior informationindicating that the user sits, and in the case where the posture changedetermination value is larger than the minimum posture changerecognition value and in the case where the user is already sitting, theposture change determination unit generates the behavior informationindicating that the user stands.
 13. The information processingapparatus according to claim 4, wherein the sensor data includes firstto third acceleration sensor data that are data regarding accelerationsin predetermined coordinate axes, wherein the sensor data calculationunit calculates gravity direction acceleration sensor data that isinformation indicating the acceleration in the gravity direction basedon the first acceleration sensor data, the second acceleration sensordata, and the third acceleration sensor data and calculates elevatorrising determination data of determining whether or not the user boardsthe elevator by calculating a difference between the gravity directionacceleration sensor data and the gravity, wherein in the case where theelevator rising determination data is larger than a predetermined valueD_(α) at first and, after that, smaller than a predetermined valueD_(β), the elevator boarding determination unit generates the behaviorinformation indicating that the user is rising in the elevator, and inthe case where elevator rising determination data is smaller than thepredetermined value D_(β) at first and, after that, larger than thepredetermined value D_(α), the elevator boarding determination unitgenerates the behavior information indicating that the user isdescending in the elevator, wherein the D_(α) is a minimum elevatorrising recognition value that is a lower limit value for recognizingthat the user starts to rise in the elevator, and wherein the D_(β) is amaximum elevator descending recognition value that is an upper limitvalue for recognizing that the user starts to descend in the elevator.14. The information processing apparatus according to claim 13, whereinthe sensor data calculation unit calculates gravity adjusting datarepresented by the magnitudes of the first acceleration sensor data, thesecond acceleration sensor data, and the third acceleration sensor datato allow the value of the gravity to be corrected, records the gravityadjusting data in the sensor data storage unit, and calculates a gravityadjusting variance value that is a variance value of the gravityadjusting data stored in the sensor data storage unit and a gravityadjusting average data that is an average value of the gravity adjustingdata, and wherein, in the case where the gravity adjusting variancevalue is smaller than a maximum allowable gravity adjusting variancevalue that is a maximum variance value for allowing the gravity to beadjusted, in the case where the gravity adjusting average data is largerthan a minimum allowable gravity average value that is a minimum averagevalue of allowing the gravity to be adjusted, and in the case where thegravity adjusting average data is smaller than a maximum allowablegravity average value that is a maximum average value of allowing thegravity to be adjusted, the sensor data calculation unit considers thevalue of the gravity adjusting average data as the gravity aftercorrection and performs calculation by using the gravity aftercorrection instead of the gravity.
 15. The information processingapparatus according to claim 4, wherein the sensor data includes firstto third acceleration sensor data that are data regarding accelerationsin predetermined coordinate axes, wherein the sensor data calculationunit calculates horizontal direction acceleration sensor data andvertical direction acceleration sensor data based on the first to thirdacceleration sensor data, records the horizontal direction accelerationsensor data and the vertical direction acceleration sensor data in thesensor data storage unit, calculates a horizontal direction variancevalue based on the horizontal direction acceleration sensor datarecorded in the sensor data storage unit, calculates a verticaldirection variance value based on the vertical direction accelerationsensor data recorded in the sensor data storage unit, and calculateselectric train boarding determination data of determining whether or notthe user boards the electric train by integrating the small variancevalue between the horizontal direction variance value and the verticaldirection variance value, and wherein, in the case where the electrictrain boarding determination data is larger than a minimum electrictrain boarding recognition value that is a lower limit value forrecognizing that the user boards the electric train, the electric trainboarding determination unit generates the behavior informationindicating that the user boards the electric train.
 16. The informationprocessing apparatus according to claim 4, wherein the sensor dataincludes first to third acceleration sensor data that are data regardingaccelerations in predetermined coordinate axes and first to third gyrosensor data that are data regarding gyros in predetermined coordinateaxes, wherein the sensor data calculation unit calculates an angularvelocity in the gravity direction based on the first to thirdacceleration sensor data, from which the frequency area is removed, andthe first to third gyro sensor data, and wherein, in the case where theangular velocity is smaller than a maximum turning-to-the-rightrecognition value that is an upper limit value for recognizing that theuser turns to the right, the turning-to-the-right/turning-to-the-leftdetermination unit generates the behavior information indicating thatthe user turns to the right, and in the case where angular velocity islarger than a minimum turning-to-the-left recognition value that is alower limit value for recognizing that the user turns to the left, theturning-to-the-right/turning-to-the-left determination unit generatesthe behavior information indicating that the user turns to the left. 17.The information processing apparatus according to claim 4, wherein thesensor data includes first to third acceleration sensor data that aredata regarding accelerations in predetermined coordinate axes, whereinthe sensor data calculation unit calculates a value of theidentification function by using a characteristic vector generated basedon the first to third acceleration sensor data and the identificationfunction set according to vehicle type, and wherein, in the case wherethe calculated value of the identification function is larger than avehicle boarding recognition value that is used to recognize whether ornot the vehicle is boarded corresponding to the identification function,the vehicle boarding determination unit generates the behaviorinformation indicating that the user boards the vehicle corresponding tothe identification function.
 18. An information processing methodcomprising the steps of: sensing a user behavior and generating sensordata corresponding to the user behavior; recognizing the behaviorexhibited by the user by performing a predetermined threshold valueprocess on the sensor data and generating behavior information that isinformation indicating the behavior exhibited by the user; managing thebehavior information generated by the behavior recognizing unit incorrespondence with the time point at which the behavior correspondingto the behavior information is exhibited; and performing a predeterminedpost-process on the behavior information managed by the behaviormanager, wherein, the recognizing the behavior further includes aplurality of the steps of determining behaviors specified to thebehaviors exhibited by the user and generating the behavior informationbased on the determination results of the plurality of the steps ofdetermining the behaviors.
 19. A program causing a computer including apredetermined sensor to execute: a sensor data generation function ofsensing a user behavior and generates sensor data corresponding to theuser behavior; a behavior recognition function of recognizing thebehavior exhibited by the user by performing a predetermined thresholdvalue process on the sensor data and generating behavior informationthat is information indicating the behavior exhibited by the user; abehavior managing function of managing the behavior informationgenerated by the behavior recognizing unit in correspondence with thetime point at which the behavior corresponding to the behaviorinformation is exhibited; and a behavior information post-processfunction of performing a predetermined post-process on the behaviorinformation managed by the behavior manager, wherein the behaviorrecognition function further includes a plurality of behaviordetermination functions specified to specific behaviors exhibited by theuser and generates the behavior information based on the determinationresults of the plurality of behavior determination functions.